[x3d-public] X3D minutes 24 JAN 2020: X3Dv4 Interchange-profile Text, visible, displayBBox, XML Metadata* default containerField

Don Brutzman brutzman at nps.edu
Fri Jan 24 09:55:44 PST 2020


Agenda: ongoing review of progress and issues list for X3Dv4.

Attendees: Anita Havele, Vince Marchetti, Nicholas Polys, Dick Puk, Don Brutzman.

All information reviewed to be acceptable for public release.

==================================

The X3D Graphics Working Group addresses all X3D specification issues and coordinates the technical development of future improvements.
       http://www.web3d.org/working-groups/x3d

Members and invited experts are welcome.  We are an open organization. Please let us know if you have an important topic to present or discuss.

Each week we report out both public and member-only information - membership has value!  To become a Web3D Consortium member:
       Join the Web3D Consortium
       http://www.web3d.org/join

X3Dv4 references and teleconference information appears below.

==================================

1. *General Topics*

a. Web3D 2020 Conference updates
    https://www.web3d.org/event/web3d-2020-conference-seoul-korea

Call for Participation (CFP) and deadlines are now released!

- Expected paper, session proposal deadline: 20 FEB 2020
- VR Hackathon, 21-23 June 2020 (tentative)
- Conference 24-26 June 2020

http://2020.web3dconference.org
> Important Dates:
> 
> 22 February 2020  – Paper and Poster submission
> 06 April 2020 – Paper/poster acceptance notification
> 23 April 2020 – Camera-ready paper/poster submission
> 22 March 2020 – Tutorial and Workshop submission
> 22 March 2020 – Demonstration submission
> 22 March 2020 – Industrial use cases submission
> 22 March 2020 – Standards session submission
> 22 April 2020 – Tutorial/workshop/demonstration/industrial use cases acceptance notification
> 06 May, 2020 – HAnim competition submission:  (winners announced at the conference)
> 
> Questions: program2020 at web3dconference.org
----

b. Releases

- view3dscene converter
   https://twitter.com/castleengine/status/1215751985523232771
   https://castle-engine.io/wp/2020/01/10/convert-to-x3d-from-gltf-obj-stl-collada-and-change-x3d-encodings-using-online-castle-game-engine-converter

- Xj3D NPS branch upgraded to Java 13 and moved from SourceForge subversion to
   https://gitlab.nps.edu/Savage/xj3d
   TODO in progress, update distribution page
   https://savage.nps.edu/Savage/developers.html#Xj3D

> Update in progress!
> NPS has upgraded Xj3D to latest Java 13 (OpenJDK 13) libraries, and moved this project to https://gitlab.nps.edu/Savage/xj3d. Regression testing complete, updated .jars are available, and improvements are continuing.
> Next steps: finish documentation updates (including this page), announce release of Xj3D NPS branch version 2.2, and begin adding support for X3D version 4. Have fun with Xj3D! 

This is full open source, publicly available, and keeping as close to Xj3D and Aviatrix builds as possible.  All participation will be welcome.

c. HelloGermany.x3d and I18N
    https://x3dgraphics.com/examples/X3dForAdvancedModeling/HelloWorldScenes
    https://x3dgraphics.com/examples/X3dForAdvancedModeling/HelloWorldScenes/HelloGermany.x3d
    https://x3dgraphics.com/examples/X3dForAdvancedModeling/HelloWorldScenes/HelloGermanyIndex.html
    https://www.w3.org/International

Gee, any other countries and languages out there?

Curiously (happily) our first Internationalization (I18N) issue with Xj3Dv2.2 is that somehow special fonts got dropped.

https://gitlab.nps.edu/Savage/xj3d/issues/1

d. HelloWorldMinimal.x3d posted to WikiBooks
    https://en.wikibooks.org/w/index.php?title=Computer_Programming/Hello_world
    https://en.wikibooks.org/w/index.php?title=Computer_Programming/Hello_world#X3D_(Extensible_3D)
    https://x3dgraphics.com/examples/X3dForAdvancedModeling/HelloWorldScenes/HelloWorldMinimal.x3d
    https://x3dgraphics.com/examples/X3dForAdvancedModeling/HelloWorldScenes/HelloWorldMinimalIndex.html

Of note is that Text node requires Immersive profile, or (less commonly) Interchange profile with Text component level 1.  Wondering, should we relax this requirement and add it to Interchange profile instead?  Of note is that X_ITE and X3DOM do not forbid its use under Interchange profile.  Historically there was concern about computational complexity for tessellation of fonts - that concern no longer exists (thank you Moore's Law).  Related: we should ensure FontStyle matches.

Plain old Web authors won't want to worry about this.

Xj3D might be the only browser that enforces draconian display - we can fix that to match the correct answer.

There are similar issues with CSS that are worth looking at downstream.  For now they are "orthogonal" in that
(a) they change the scene graph via DOM, and so are always matching,
(b) they offer WebFonts to DOM-based JavaScript players like X3DOM and X_ITE.

Path forward: add it as a Mantis issue, give it a week on the mailing list, and look at FontStyle implications next week.  Once/if no objections then we can approve this useful relaxation.

----

2. *Validation:* much work on tools, all succeeding to match technical dialog to date.  Summary noted here, continues to track group decisions on X3Dv4.  Discussion welcome if any of these many details are unclear.

Group discussion of TODO items is always helpful for continuing progress.

https://www.web3d.org/specifications
https://www.web3d.org/specifications/x3d-schema-changelog.txt

> 18 JAN 2020, brutzman
> - Relaxation of some name constraints from NMTOKEN to SFString for meta, Metadata nodes,
>   CAD nodes. Did not change xs:NMTOKEN to xs:token, keeping exact match with DOCTYPE.
>   No change needed in DOCTYPE, already matched these conventions.

This matches Mantis issue 1276: name types: whitespace constraints, NMTOKEN and SFString
https://www.web3d.org/member-only/mantis/view.php?id=1276
Recommended next step: update prose in specification to describe naming constraints.

=============================================
Suggested specification prose, review and approved:

4.4.3 DEF/USE semantics
4.4.4 Prototype semantics, 4.4.4.1 Introduction
4.4.2.2 Field semantics, inserted as list item g.
7.2.5.5 UNIT statement (already includes statement)
26.2 Concepts (Humanoid Animation)
31.3.1 X3DProgrammableShaderObject

   "Values for names are not allowed to contain whitespace."

=============================================
7.2.5.6 META statement (substituting <key> for name)
7.3.4 X3DMetadataObject (all Metadata* nodes)
32.3.1 X3DProductStructureChildNode (i.e. CAD nodes)

    "Values for names are allowed to contain whitespace."

Considered but rejected for X3D Architecture specification:

    "NOTE. A name value containing whitespace might be inconsistent, thus not validating or matching other corresponding values."
=============================================

> - fix content model for GeoOrigin (which is X3DNode, not X3DChildNode) as initial
>   element after metadata field.  Improved regularity enabled X3D-Tidy fix for
>   ordering of child nodes.
> - (v4.0) add visible field to X3DBoundedObject, Mantis 1271
>   https://www.web3d.org/member-only/mantis/view.php?id=1271 (no longer named 'hidden')
> 
> - (v3.2+) CollisionCollection implements X3DChildNode, not X3DNode
> - (v4.0) CollisionCollection contains nodes with X3DBoundedObject interfaces, so
>   TODO CollisionCollection needs to be marked in specification as X3DBoundedObject as well.

New Mantis issue 1275: CollisionCollection implement X3DBoundedObject node
https://www.web3d.org/member-only/mantis/view.php?id=1275

Some discussion regarding nature of bounding boxes, comparison to NurbsSet, etc.  We will continue thinking about how to best achieve specification consistency.  Insights and questions welcome.

> - TODO (v4.0) PointSet, LineSet, IndexedLineSet implement X3DComposedGeometryNode
>   similar to other geometry nodes, allowing Normal and texture coordinate children
> - TODO Consider StaticGroup implement X3DGroupingNode

Saved for next week!

----

3. *Mantis issues:* ongoing progress reported on mail list.  Specific issues for today:

a. Dick and Don have begun the "minor" comments which are mostly HTML clarifications/cleanups in the specification.  We continue to meet 1-2 times weekly to address the backlog of pending comments.

    [x3d-public] X3Dv4 mantis issue resolutions
    http://web3d.org/pipermail/x3d-public_web3d.org/2020-January/011702.html

Updated X3Dv4 specification available at
https://github.com/Web3DConsortium/X3D/tree/master/ISO-IEC19775/ISO-IEC19775-1/ISO-IEC19775-1v4.0/ISO-IEC19775-1v4-WD1

Mantis workflow process flowcharts and description of terminology definitions (prepared thanks to Roy Walmsley) are found at

* https://www.web3d.org/member/mantis-workflow
* https://www.web3d.org/member/mantis-definitions
* https://www.web3d.org/member-only/mantis/view_all_bug_page.php

Of note: issues that are fixed and committed to specification HTML source on github are marked "resolved" pending final group review of all completed issues together.  Meanwhile further review is welcome and comments will be addressed.

Thus we expect to collect more and more 'resolved' issues as we approach final review/release point for X3Dv4.

----

b. During terminology review for a related ISO specification, we noticed that the term 'model' is not included in our X3D Architecture glossary.

Several definitions are included in Mantis issue 1278, further suggestions welcome.

* https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/glossary.html
* https://www.web3d.org/member-only/mantis/view.php?id=1278

----

c. Mantis 1277: Provide field on X3DBoundedObject nodes to display bounding boxes.
    https://www.web3d.org/member-only/mantis/view.php?id=1277

Further discussion on Thursday's Design Printing Scanning (DPS) Working Group call summarized and added to issue, repeated publicly on the mailing list thread.

* [x3d-public] candidate feature: display bounding box
   http://web3d.org/pipermail/x3d-public_web3d.org/2020-January/011705.html

Since there are multiple implementations already in existence that handle bounding box display efficiently, it would be helpful to focus any discussion on usability issues.
- bounding boxes can assist in navigation, selection, and displaying state
- facilitating author use of bounding boxes for end users in X3D is helpful
- /displayBBox/ is distinct from /visible/ field.
- since bounding box display is complementary to bounded object visibility, now is an appropriate time to consider it.

Suggested prose to bash on follows, improved during call.  (Incidentally it does not mandate how a browser might efficiently execute this task.)

"When displayBBox is true, the bounding box is displayed for the associated geometry."

We agreed to let consideration of this issue continue on the mailing list.

----

d. Regarding XML encoding of Metadata nodes, and issues raised in Vince's email today:

* [x3d-public] X3D agenda 24 JAN 2020 (i.e. MetadataSet in XML encoding)
   http://web3d.org/pipermail/x3d-public_web3d.org/2020-January/011708.html

TODO: Don will create an issue to capture and propose simple solution: change default containerField in XML schema to 'value' so that verboseness is reduced.  On deck for mailing list post and discussion next week.

----

e. TODO (real soon now): we will begin listing *X3Dv4 Assets* on X3D Implementations page. For example:

	full:	X3D XML Schema, DOCTYPE, Schematron, Tooltips, X3D0-Tidy,
		X3D Examples validation, X3DUOM, X3D Java, X3D Python, X3D Ontology
	partial: X3DOM, X_ITE, view3dscene (see table)
	maybe:	FreeWrl, X3DJSONLD JavaScript
	coming:	Xj3D, X3D Validator, X3D-Edit

----
==================================

*X3Dv4 Background Information*

Major pieces of work in progress and highly mature include:

a. glTF lighting and physically based rendering, Michalis Kamburelis

b. X3D Sound Component and HTML Audio, Athanasios Malamos and Efi Lakka

c. Projective Texture Mapping (PTM), Kwan Hee Yoo

d. Many specification improvements and additions.

Key references:

[1] X3D Version 4 Overview
        https://www.web3d.org/x3dv4

[2] X3Dv4 Highlights
        httpss://www.web3d.org/x3dv4-highlights

[3] X3Dv4 Implementations Status
       https://www.web3d.org/x3dv4-implementations

[4] Draft X3Dv4 specification from SIGGRAPH, August 2019
       https://www.web3d.org/news-story/x3dv4-draft-specification-available-public-now

[5] Mantis Issue Tracker (requires 2 sets of member login)
       https://www.web3d.org/member-only/mantis/view_all_bug_page.php

You can quickly see all X3Dv4 issues (with tag V4.0) by selecting the filter "X3Dv4" within mantis.

As specified in the reference pages, our next steps of implement/evaluate over the next quarter include
- finished specification prose in github,
- addressing all mantis issues,
- proper example X3D models available for each node/field,
- validation tools confirming examples are satisfactory,
- two or more implementations (X3DOM and X_ITE, others),
- consensus by working group, approval by Web3D Consortium, submission to ISO.

Here are refined milestones from X3Dv4 Implementations Status page:

_Milestones Timeline_

* /26-31 July 2019/.    Publish draft specification plus examples and implementation updates at Web3D2019/SIGGRAPH 2019 conferences.
* /16 December 2019/.   Working group accepts X3Dv4 new-technology submissions, with rich capability set publicized for implementation work.
* /31 January 2020/.    Specification Editors provide ISO Working Draft on github for use and confirmation by Web3D Consortium members.
* /First quarter 2020/. Implement new components in X3D players, evaluate scene examples for conformance. Publish weekly progress updates.
* /When completed/.     Completed ISO Working Draft submitted to X3D Community, Web3D Consortium members, Web3D Board of Directors.
* /BoD approval/.       Working Draft upgraded to Committee Draft and submitted with NWIP to ISO.
* /Sequential updates/. Specification updates for 19775-2 Scene Access Interface (SAI), file encodings (XML, ClassicVRML, JSON etc.) and language bindings (JavaScript, Java, Python), and X3D Semantic Web (possibly 19775-3).

==================================

*Teleconference Information*

We are using the Web3D Consortium Zoom channel, to good effect.  It allows use of internet audio, screen sharing and chat with links.

We meet regularly on Fridays 0800-0930 pacific.  To join the teleconference:

       Join URL https://zoom.us/j/148206572 for X3D Working Group

One tap mobile
* US (New York) +19292056099,,148206572 #
* US (San Jose) +16699006833,,148206572 #

Dial by your location, using (nine-digit number from Join URL above)

* US (New York) +1 929 205 6099
* US (San Jose) +1 669 900 6833

Additional information

       Web3D Teleconference
       http://www.web3d.org/member/teleconference-information

==================================

Steady progress throughout.  Thanks for all efforts.  Have fun with X3D!  8)

all the best, Don
-- 
Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman at nps.edu
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman



More information about the x3d-public mailing list