<html 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=utf-8"><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;}
@font-face
{font-family:Verdana;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
.MsoChpDefault
{mso-style-type:export-only;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:472253142;
mso-list-type:hybrid;
mso-list-template-ids:286569224 -1 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Your documents give me the feeling of a network protocol, whereas mine feel more like a database or http/rest. Probably because we have our separate work experience. I think the DIS protocol works more like radios and GPS would be my guess. With X3D MU, we are defining in a space of 1) chat protocols like XMPP and IRC 2) database protocols like SQL*Net 3) Object/Multimedia protocols like WebRTC and SIP.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Some comments:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>People build webapps to protect users from their databases. The corollary to this is that there might be user information that is exclusive to a user or group.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>My primary request for a network protocol is that they are difficult to debug, thus you should create them similar to a command prompt, like request/reply, UTF-8, etc. However, I think with MU, you are getting events from others, so it’s more like debugging pub/sub or a messaging system like Oracle AQ, Java JMS, IBM MQ, Apache ActiveMQ, etc. </p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>What do you think about using pub/sub or messaging? What “style” of protocol works best in SP-ARK’s case? I think one to many and many to one is one of the best features of pub/sub, but often it takes a lot infrastructure to maintain the queues.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Maybe we should step back and define the objects we are communicating.</p><p class=MsoNormal><o:p> </o:p></p><ol style='margin-top:0in' start=1 type=1><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>Avatar (initial H-Anim figure) and position, orientation, motion (ongoing). This is done by pc.multiplayer tag around the world</li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>Things the avatar might be carrying (shapes transformed by the avatars position, orientation and motion)</li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>Sounds-chat-video applied to avatar position</li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>???</li></ol><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:christoph.valentin@gmx.at">Christoph Valentin</a><br><b>Sent: </b>Sunday, March 31, 2019 4:18 PM<br><b>To: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a>; <a href="mailto:luletibbe@gmail.com">Sven-Erik Tiberg</a><br><b>Subject: </b>Aw: RE: New X3D network working group suggestion: Standardsforcollaboration I/O, processing and storage (SP-ARK)</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Great, it's an unusual feeling not being alone :-) <o:p></o:p></span></p><div><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><div style='border:none;border-left:solid #C3D9E5 1.5pt;padding:0in 0in 0in 8.0pt;margin-left:7.5pt;margin-top:7.5pt;margin-right:3.75pt;margin-bottom:3.75pt;word-wrap: break-word;-webkit-nbsp-mode: space;-webkit-line-break: after-white-space' name=quote><div style='margin-bottom:7.5pt'><p class=MsoNormal><b><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Gesendet:</span></b><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> Sonntag, 31. März 2019 um 23:14 Uhr<br><b>Von:</b> "John Carlson" <yottzumm@gmail.com><br><b>An:</b> "Christoph Valentin" <christoph.valentin@gmx.at>, "X3D Graphics public mailing list" <x3d-public@web3d.org><br><b>Cc:</b> "Sven-Erik Tiberg" <luletibbe@gmail.com><br><b>Betreff:</b> RE: New X3D network working group suggestion: Standards forcollaboration I/O, processing and storage (SP-ARK)<o:p></o:p></span></p></div><div name=quoted-content><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>I will review you contributions now Christoph.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>John<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986" target="_blank">Mail</a> for Windows 10<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>From: </span></b><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'><a href="mailto:christoph.valentin@gmx.at" target="_blank">Christoph Valentin</a><br><b>Sent: </b>Sunday, March 31, 2019 2:47 PM<br><b>To: </b><a href="mailto:yottzumm@gmail.com" target="_blank">John Carlson</a>; <a href="mailto:x3d-public@web3d.org" target="_blank">X3D Graphics public mailing list</a><br><b>Cc: </b><a href="mailto:luletibbe@gmail.com" target="_blank">Sven-Erik Tiberg</a><br><b>Subject: </b>Aw: New X3D network working group suggestion: Standards forcollaboration I/O, processing and storage (SP-ARK)<o:p></o:p></span></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>John,<br><br>Of course I will add these ideas to the collection of inputs.<br><br>>>>>>>>>What do you view as the primary SP-ARK actions?<br><br>1) SP-ARK is dedicated to the use (and support) of X3Dv4<br>2) basically, the playground is open to anybody, who is interested in simple multiuser scenes<br>3) probably we will implement some demo application maybe even a server (depends on support)<br>4) Goal 1: help the Web3D Consortium in defining an application layer protocol for the Network Sensor<br>5) Goal 2: to be defined<br>6) Goal 3: to be defined<br>7) and so on<br><br>8) SP-ARK has not been started yet, but with this e-mail the probability of a start increases :-)<br><br>All the best<br>Christoph<br><br>--<br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.<o:p></o:p></span></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Am 31.03.19, 21:14, John Carlson <yottzumm@gmail.com> schrieb:<o:p></o:p></span></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:4.8pt;margin-right:0in;margin-bottom:5.0pt'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Way up above the networksensor protocol is the concept of collaborate. How can we effectively store and communicate collaborations? Do they effectively store to a typical hierarchical file system, ala Git or Google Docs or do we need to create a new technology for collaborations? Might collaborations be “part of the network”? What if you couldn’t work without someone to collaborate with? Can a collaboration include parts of the physical world?<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Christoph, you can add this as a comment to SP-ARK. I think we need to develop some use cases or user stories for SP-ARK that involve collaboration if they are not already there:<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Primary actions are Create, Delete, Change, Inspect, Add, Remove, Move, Copy, Grant, Revoke. Record Date/Time for all actions performed.<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Create Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Create Object<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Create Subject<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Delete Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Delete Object<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Delete Subject<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Change Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Change Object<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Change Subject<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Inspect Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Inspect Object<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Inspect Subject<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Add Subject to Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Add Object to Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Add Collaboration to Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Remove Subject from Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Remove Object from Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Remove Collaboration from Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Move Subject to Location, Orientation in Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Move Object to Location, Orientation in Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Copy Object between Collaborations<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Copy Collaboration between Collaborations<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Move Collaboration to Location, Orientation in Collaboration<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Grant access to “Collaboration, Object, Action” (key) to Subject<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Revoke access to “Collaboration, Object, Action” from Subject<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>So for pc.multiplayer, there are 3 collaborations, global tag, card game and chat, managed by a server.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Objects include location, card and message<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Subjects are clients<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>There is no real collaboration, except the server is effectively a collaboration. There is limited communication between servers.<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>No grant/revoke.<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Collaboration might be thought of as a server, table, channel, room, or conversation all at once.<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>More? I believe if we implement this much for a network protocol for SP-ARK, we will have achieved quite a bit.<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>We should probably prototype with an easy to use protocol, that can be used from JavaScript, and “upgrade” to a more industrial protocol once we have the patterns down. That is, lower levels can be swapped out by vendors. Thus we need a “JPA-like (Hibernate)” level which unifies the persistence and communication. I am thinking some object attributes can be annotated as persistent and/or communicateable.<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>What do you view as the primary SP-ARK actions?<o:p></o:p></span></p><p><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>John<o:p></o:p></span></p></blockquote></div><p style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div></div></div></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;margin-right:3.75pt;mso-margin-bottom-alt:auto;margin-left:7.5pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>