<div dir="auto">Very good, Joe!</div><div dir="auto"><br></div><div dir="auto">I might consider one more thing, working offline temporarily , with a queue of updates being kept on the client and server, in “local-first” worlds.   And resolution between updates when eventually connected.   Often this will mean running a database in the browser, with indexdb, SQLite or Postgres compiled into WASM.   So both a local database in the browser and one on the server, with two-way sync, which extends into multiway sync.</div><div dir="auto"><br></div><div dir="auto">Having a local database means that even DOM may be stored for long term use on the client, and not continually loaded in the browser when you bring up a world—it’s stored in the browser for immediate viewing without rebuilding from XML or HTML each time.   Yes, one may have to build from records in a local database, or one can store JSON (glTF), which is already compatible with tables, except UUIDs and versions (with dates) are needed for syncing clients with servers.</div><div dir="auto"><br></div><div dir="auto">One may also reconsider object-based databases, like storing RAM structures directly in an SSD, which should mean loading and saving can be extremely efficient.  So don’t store files and folders long term, but objects and arrays directly on SSD.  Some might consider this a relational file system as previously proposed by Microsoft, but never released.</div><div dir="auto"><br></div><div dir="auto">Yes, ultimately, things need to be stored in an external format, either for transmission, updates, archiving or migrations.</div><div dir="auto"><br></div><div dir="auto">John</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote gmail_quote_container" dir="auto"><div dir="ltr" class="gmail_attr">On Tue, Apr 29, 2025 at 3:07 PM Joe D Williams via x3d-public <<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><a href="https://metaverse-standards.org/news/blog/linked-spatial-experiences-the-web-of-worlds/" rel="noreferrer" target="_blank">https://metaverse-standards.org/news/blog/linked-spatial-experiences-the-web-of-worlds/</a><br>
<br>
Hierarchy of Object Models<br>
<br>
WWW Our World Wide Web<br>
.DOM Document Object Model<br>
..WMVOM WebiMetaVerse Object Model<br>
...FSOM FreeSpace Object Model<br>
....SOM Scene Object Model (X3D SAI)<br>
...WOM World Object Model<br>
....SOM Scene Object Model (X3D SAI)<br>
....HOM Humanoid Object Model<br>
...AOM Action Object Model<br>
....Dynamics Library<br>
...Other Standards-Track Content Models<br>
..Domain-Specific AI<br>
<br>
An advanced object model at any level will implement<br>
a Domain-Specific AI for realtime validation of<br>
certain structure and function parameters.<br>
<br>
So, in the general case our WWW information/experience<br>
system is hosted by a form of web browser that can<br>
implement the DOM. This provides the basic WWW<br>
object model to host certain XML-based<br>
interactive content.<br>
Immersion functionality is added as a component<br>
to the DOM by the WMVOM, which defines the<br>
standards-track content and event system<br>
for the WebiMetaVerse.<br>
<br>
The Immersive standards-track is produced by<br>
the WOM, describing allowed and required content of the World.<br>
This WOM contains the SOM, which is currently<br>
implemented by X3D SAI.<br>
<br>
The Humanoid Object Model is a component of<br>
the SOM that documents the standards-track<br>
Humanoid that can represent the user simulating<br>
operations in the active Scene of the host World.<br>
<br>
The FreeSpace Object Model defines operations<br>
that provide an immersion experience using<br>
extensions and augmentations that<br>
are not necessarily embedded in a World.<br>
<br>
The WMV can exist freestanding, without the<br>
DOM host, and may implement the DOM to interact<br>
with the WWW.<br>
<br>
Thanks for thinking about this hierarchy of content documentation,<br>
Joe<br>
<br>
_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div></div>