[x3d-public] X3D working group agenda 7 June 2019: tracking implementation support

Brutzman, Donald (Don) (CIV) brutzman at nps.edu
Fri Jun 7 06:39:42 PDT 2019

0. *Attendees* TODO Verify: Jakub Flotynski, Anita Havele, Vince Marchetti, Nicholas Polys, Dick Puk, Don Brutzman.

Updated online: draft revision to X3D Node and Statement Inventory Comparison.


Today's goal: tracking progress of implementation support for draft X3Dv4 specification.


Information inputs are always welcome.  With much X3D activity occurring there is typically plenty to review each week, ensuring that our progress continues to be clearly recorded and communicated.

Confirmed: all information in these weekly minutes is releasable publicly. One separate member-only message was sent to Medical Working Group list.


Members and invited experts are welcome.  We are an open organization.

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

The X3D Graphics Working Group addresses all X3D specification issues and coordinates the technical development of future improvements.

Each week we report out both public and member-only information - membership has value.  To become a Web3D Consortium member:
	Join the Web3D Consortium


1. *Prior meeting minutes*

Thanks to cochair Vince Marchetti for moderating several recent meetings.

	[x3d-public] X3D meeting 10 May 2019: Physically Based Rendering going into specification, X3Dv4 implementation updates

	[x3d-public] X3D minutes 17 May 2019: X3Dv4 specification update planning

	[x3d] X3D WG Call minutes May 24 2019

[Any discussions last week?  I was on an airplane.]

At this point we discussed recent meetings and current developments.

a. ISO Status

b. CAD Design Printing Scanning Working Group

c. HAnim Working Group

Agenda review: what else?


2. *Recent and Upcoming Events*

Thanks for patience with my partial presence over past weeks, am keen for all of us to keep building momentum for our upcoming annual milestone conferences.

If you want to participate in these compelling conferences, the time to register and reserve rooms is now!

a. Web3D 2019 Conference
	Los Angeles, 26-28 July

b. SIGGRAPH 2019
	Los Angeles, 29 July - 1 August

c. News release:
	Castle Game Engine, May Engine Features – FMOD, warmup cache, FpMake and InstantFPC docs…

Communications team meets weekly on Wednesdays to continue promoting Web3D, X3D and HAnim.  Member participation welcome.


3. *Status of X3D Language Bindings and File Encodings*

a. Humanoid Animation (HAnim)
- HAnim specifications are a closely related ISO standard
- FDIS submitted to ISO, final comment resolution in progress.
- New zip available to members containing both volumes together.
- HAnim version 2 is included already in X3Dv4
- Resuming work on implementing in X3Dv4 by Joe Williams and Don Brutzman, next step is further implementation.


b. X3D Java language binding
- Build outputs now in version control, available at
- Stable, complete and working using
         X3DJSAIL: X3D Java Scene Access Interface Library
- TODO: review and update Java specification

Software progress: X3DJSAIL has integrated two open-source implementations for Efficient Extensible Interchange (EXI) compression for XML and JSON:  Exificient and OpenEXI.  Current work is focused on facilitating round-trip comparison testing between the two.  Next capabilities on deck are XML Encryption (privacy) and XML Signature (authentication) using Apache Santuario libraries.

	X3D Java Scene Access Interface Library (X3DJSAIL)

c. JSON encoding for X3D
- Build outputs now in version control, available at
- X3DJSONLD summary, status
- JSON Schema update
         https://json-schema.org still at draft-07
         JSON Schema is a vocabulary that allows you to annotate and validate JSON documents.
- Review requested:  Work In Progress Feedback
   "The forthcoming draft is now feature-frozen and entering the final four-week feedback period before publication. This final review will last from May 27th to June 24th, 2019. [...]"

- TODO: can X3D JSON schema matching draft-08 be validated?
- TODO: update X3D JSON schema to match next version, then autogenerate from X3DUOM
- TODO: create X3D JSON specification


d. X3D Python Language Binding
- active work implementing by John Carlson and Don Brutzman, good assistance by Loren Peitso and Andreas Plesch.
- We are using X3DUOM/X3DJSAIL as an initial implementation to test Python syntax alternatives.
- We continue tuning compilability and "Pythonic" elegance of syntax candidates.
- Progress: now applying build processes to all X3D Example Archive scenes, updates are published.
- Key blocker: Pyjnius wrapping of X3DJSAIL is mapping of return types sometimes reverts to parent interfaces instead of the same class.  Investigating direct mapping within Pyjnius configuration.
- Syntactic terseness: need to move "Import" statements for each node into Pyjnius binding.
- Deployment: create a PIP module.
- Deployment experimentation with Jupyter Notebook has begun.
- TODO write up implementation capabilities and then create specification.
- TODO someday a second implementation, hopefully with Korea Chapter's forthcoming C SAI implementation.

	[x3d-public] updates to X3DJSAIL, plus python and java versions of X3D Examples

e. X3D C, C++, C# Language Bindings
- Last reviews at Web3D Korea Chapter meeting Seoul January 2019
- TODO update status, plans for SIGGRAPH code releases and encouraging additional use.
- TODO: create specifications
- Wondering, might a monthly "code drop" (or somesuch) permit further review and familiarization?
- Note that compilation is requirement for eventual submission to ISO
- Recurring review might help attract second implementation for each


g. X3DUOM:  X3D Unified Object Model (X3DUOM)

- X3DUOM is a full set of object-oriented interfaces for all nodes, fields and statements in the X3D Architecture Specification.
- Continued small improvements in X3DUOM and annotated X3D XML Schemas occur each week as we continue implementing and evaluating both X3DJSAIL for Java, and (presumably X3DPSAIL for) Python.  Special thanks to John Carlson for extreme coding!
- Experimental integration of X3DUOM as first-class programming object in X3DJSAIL, created via Java API for XML Binding (JAXB).
- Cross-referencing types and documentation as X3D Semantic Web Working Group begins to compare 3D ontologies.


4. *X3D Node and Statement Inventory Comparison*

Draft revision updated online for review.  Note addition of HAnimMotion and PointProperties nodes.  Discuss next steps.



5. *Implementation support for draft X3Dv4 specification*

Page for tracking progress:

	X3Dv4 Implementations Status


6. *References and Resources*


	X3Dv4 Implementations Status

	X3Dv4 Development page

	X3D Specification Relationships

	Mantis Issues (requires member login, twice)

	Web3D Specifications on Github: X3D (members can request access)

Communication of priorities is welcome.  We will focus on one or two topics every week.


7. *Upcoming topics*

Next week:

- Projective Texture Mapping (PTM) component.
a. Mantis issue 1255 created for keeping track of status.
b. TODO Add zip of spec/examples/information that has been submitted on mantis issue
c. Prose already present in github components directory as ProjectiveTextureMapping.html
     43  Projective Texture Mapping Component
d. TODO Add example scenes to X3D Basic Examples Archive
e. TODO List existing implementations, then issue call for additional implementations.

Topics list:

- Annotation Component
- Much work already accomplished.  Time to land any existing draft prose in github specifications, and review what work is occurring.

- X3D Architecture Design and Event Passing, compare implementations
a. how have X3DOM and X_ITE each implemented events?
b. What differences exist?
c. Are ROUTE connections consistent?
d. X3DOM is still missing some important/simple Event Utility nodes - is there a problem?
e. Highlight how does syntax disambiguate handling of HTML5 Script and X3D Script?
f. Reviewing our tagging of Mantis issues as #X3Dv4 for completeness.
g. Ensure that goals and concepts on relationships between HTML5 and x3D are clearly expressed.

- MetadataSet implementation efforts

- Tagging and prioritizing Mantis issues.

- Numerous things to drive to completion, who is doing what?

Related work:
- X3D and other BOFs at SIGGRAPH, how to best execute these?
- Carto BOF, several candidates are on agenda.
- X3DOM release status?
- Unity3D exporter release status?


No major showstoppers are noted, rather we continue getting closer to a comprehensive X3Dv4-HTML5 architecture each week.

Steadily progressing with X3Dv4!  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