immersive-web / proposals

Initial proposals for future Immersive Web work (see README)
95 stars 11 forks source link

metadata in head to enhance webxr indexed content #73

Open HyroVitalyProtago opened 2 years ago

HyroVitalyProtago commented 2 years ago

Hello everyone, I suggest a new metadata element to enable a better indexation in web browsers for webxr content. Maybe something like <meta name="webxr" content="vr ar"> with vr and/or ar in content. (from https://github.com/immersive-web/webxr/issues/1252, toji redirected me here)

brianpeiris commented 2 years ago

I'm glad there's interest in this from other people as well. I was toying with the idea while building wwxr.io, which is meant to be a search engine for XR content on the web. (It is still a work in progress). I wrote some thoughts about crawling for XR content on the web here: https://archive.is/xPQUh (Archive link, since wwxr.io has a habit of going down occasionally at the moment).

Another option might be to follow the spec for the Open Graph protocol, specifically the extensible CURIE Object Type part of the spec. The benefit of using Open Graph, in my mind is that it is already wide-spread on the Web (for example, see Twitter's use), and libraries already exist for finding and parsing that format of meta tag. If we went with this option, ideally the Immersive Web group would endorse, claim and own the namespace (assuming we can come to some consensus in the community). It might look something like this, with sub-types for VR, AR and XR (if an app supports both modes)

<head prefix="webxr: https://www.w3.org/immersive-web/ns#">
<meta property="og:type" content="webxr:vr" />
<meta property="og:type" content="webxr:ar" />
<meta property="og:type" content="webxr:xr" />

When I put this out to the community on Twitter, I also got some other good ideas:

Personally, for the purposes of finding WebXR content on the wider web, I'd prefer to take as minimal of an approach as possible. I think a single meta tag would be sufficient, whether that it is in the Open Graph format, the schema.org format, or some custom format we decide on. In addition to identifying the content, it would also be ideal to use metadata containing a description of the content, and perhaps a thumbnail of it as well. This information ought to follow existing practices, but it would be great if we could actively encourage the community to adopt those practices, since WebXR content often does not include descriptive metadata.

Other meta-level questions we may need to answer:

HyroVitalyProtago commented 2 years ago

Thanks a lot for all the infos!

I'm completly in favor of your Open Graph protocol proposition, that's minimal and straighforward. I'm also in favor of more advanced meta tags, like a 360° view thumbnail, that can be use later for 3d-hyperlinks (portals) between WebXR sites.

For the meta-level questions, they are completely relevant but I have no idea of the answers.

cabanier commented 2 years ago

@HyroVitalyProtago What would be the usage of this metadata? Is it strictly for indexing or do you have other cases in mind?

HyroVitalyProtago commented 2 years ago

This metadata would be primarily for indexing, even if I think that later on, other metadata could be useful for interoperability (sadly we're not there yet).

Wellan-Arthur commented 2 years ago

Another usage for this metadata that I see is accessibility : informing screen readers that the main content might not even be text, but 3D immersive graphics that require specific tooling (ML, CV...) to get understood or parsed.

brianpeiris commented 1 year ago

For anyone interested, I've open-sourced my experimental search engine, based on Common Crawl data. Though I don't plan to continue working on it, so this is more for educational purposes: https://github.com/brianpeiris/wwxr

cabanier commented 1 year ago

@brianpeiris thanks! it would indeed be nice if there was a way to query for immersive content. @toji , do you know of any efforts to make page report their content type? (ie media)

Wellan-Arthur commented 1 year ago

Hi, what about exposing the scene in a stringified and verbose form factor that would be included in the HTML ? Every engine would have to generate it either beforehand and on the fly when asked for it. It would allow screen readers and web crawlers to better understand what there is to see.