Dash-Industry-Forum / DASH-IF-Conformance

This repository provides the source code for MPEG-DASH/DASH-IF Conformance Software/Validator. It has been extended according to further standards, such as CMAF, DVB-DASH, HbbTV, and CTA WAVE.
https://conformance.dashif.org/
Other
68 stars 29 forks source link

Schema validation is out of date #563

Open sammaes opened 3 years ago

sammaes commented 3 years ago

The java files in mpdvalidator/src/org/iso/mpeg/dash that are generated from the DASH xsd files in mpdvalidator/schemas are 3 years old. In the meantime a lot of things have been added or changed and thus the validator passes MPD files that are no longer valid.

I guess when the schemas were updated the last time these src files were not updated. This can be easily done in these 6 steps:

  1. Create temp dir
  2. Copy correct xsd and xlink.xsd from DASH/mpdvalidator/schemas to temp dir
  3. run 'xjc [SCHEMA_NAME].xsd'
  4. copy generated files to correct folders in DASH/mpdvalidator/src
  5. change directory to DASH/mpdvalidator
  6. remove the temp dir
  7. run 'ant' to compile the application again.
rbouqueau commented 3 years ago

xjc complains that Initialization and BitstreamSwitching are defined several times. We'll try to fix this while updating either the spec or the tooling.

sammaes commented 3 years ago

Right, I had the same issue but forgot about it since I used a temp copy of the schemas. To fix it I used the following answer on stack overflow: https://stackoverflow.com/a/38513529.

For a permanent fix it might be better to do something with the JAXB bindinds file they mention. However I have no idea what this is, I'm not familiar with java development.

rbouqueau commented 8 months ago

@Phencys Is this issue still relevant?