You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
MetacatUI downloads entire EML documents before parsing them in the Editor. This can be slow for large documents, especially those with many entities. In the viewer, we don't download or parse EML docs but instead rely on getting metadata from the view service, presumably to speed up rendering. This makes customizing the apperance of the landing page challenging.
Since the ReadableStream interface is now supported in all major browsers, we can use it to read EML in chunks and parse docs incrementally as they're being downloaded. This would speed things up and reduce memory usage, allowing users to view large EML docs without waiting for the entire document to download, and allowing us to build a more customizable and modern landing page.
To implement this, we would:
Fetch the document using the fetch() API
Get a ReadableStream for the document body
Use a streaming XML parser, like sax-js, to handle processing partial XML data
For this to be possible on the front-end, Metacat would need to support range requests for EML documents.
The text was updated successfully, but these errors were encountered:
MetacatUI downloads entire EML documents before parsing them in the Editor. This can be slow for large documents, especially those with many entities. In the viewer, we don't download or parse EML docs but instead rely on getting metadata from the view service, presumably to speed up rendering. This makes customizing the apperance of the landing page challenging.
Since the
ReadableStream
interface is now supported in all major browsers, we can use it to read EML in chunks and parse docs incrementally as they're being downloaded. This would speed things up and reduce memory usage, allowing users to view large EML docs without waiting for the entire document to download, and allowing us to build a more customizable and modern landing page.To implement this, we would:
fetch()
APIReadableStream
for the document bodysax-js
, to handle processing partial XML dataFor this to be possible on the front-end, Metacat would need to support range requests for EML documents.
The text was updated successfully, but these errors were encountered: