[x3d-public] Penultimate report, Re: Latest X3DV4 JSON schema (check date)
John Carlson
yottzumm at gmail.com
Tue Apr 27 01:53:19 PDT 2021
1GB works for me. Checking in files.
Note: Recent changes to X3dToJson.xslt may have affected JSON output
for pointProperties: Here's the diff:
$ git diff
diff --git a/X3dToJson.xslt b/X3dToJson.xslt
index 70b0e57..2a91265 100644
--- a/X3dToJson.xslt
+++ b/X3dToJson.xslt
@@ -2808,6 +2808,9 @@ POSSIBILITY OF SUCH DAMAGE.
((local-name()='applied' and .='true') or
(local-name()='linetype' and (.='1')) or
(local-name()='linewidthScaleFactor' and (.='0'
or .='0.0')))) and
+ not( local-name(..)='PointProperties' and
+ ((local-name()='attenuation' and (string(.)='1 0
0' or string(.)='1.0 0.0 0.0')) or
+ (starts-with(local-name(),'pointSize') and
(string(.)='1' or string(.)='1.0')))) and
not( local-name(..)='ClipPlane' and
((local-name()='enabled' and .='true') or
(local-name()='plane' and (.='0 1 0 0' or .='0.0
1.0 0.0 0.0')))) and
Note I took out the ^M's at the end of the + lines.
John
On 4/27/21 2:14 AM, John Carlson wrote:
>
> I'm hoping Don can provide the proper stack space requirements for
> Everit. That would be good to document somewhere and get into test
> scripts. I'm trying 1GB.
>
> I will work on creating a better way to test JavaScript versus Java
> results at sometime time range in the future. What I will do right
> now is send the JSON file to the x3dvalidate command-line validator
> (see results below everit log). You will find the x3dschema Ajv
> validator will only report things that differ between the
> hand-generated (now deprecated) and auto-generated schema. There will
> likely be a large change in x3dschema to no longer compare against
> hand-generated schemas. what I will try to do is create a good way to
> deal with updating versions, and comparing between X3D versions. (4.0
> versus 4.X).
>
>
> json-schema 4.0 Validation error
> org.everit.json.schema.InternalValidationException:
> #/X3D/Scene/-children/2/Viewpoint: #: only 1 subschema matches out of
> 2
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> json-schema 4.0 Validation error
> org.everit.json.schema.InternalValidationException:
> #/X3D/Scene/-children/3/Transform: #: only 1 subschema matches out of
> 2
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> json-schema 4.0 Validation error
> org.everit.json.schema.InternalValidationException:
> #/X3D/Scene/-children/4/Transform: #: only 1 subschema matches out of
> 2
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> json-schema 4.0 Validation error
> org.everit.json.schema.InternalValidationException:
> #/X3D/Scene/-children/5/Transform: #: only 1 subschema matches out of
> 2
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> json-schema 4.0 Validation error
> org.everit.json.schema.InternalValidationException:
> #/X3D/Scene/-children/13/AudioDestination: #: only 1 subschema matches
> out of 2
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>
> I will check in results into github.com/coderextreme/x3dschema.
>
> Here's the Ajv validator report on the file:
>
> $ node x3dvalidate.js
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>
> Loading schema
> Parsing schema
> Adding schema
> Schema 4.0 added
> Schema 4.0 compiled
> ================================================================================
> File:
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> Error reading
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>
> keyword: additionalProperties
> dataPath: X3D > Scene > -children > 2 > Viewpoint
> value:
> {"@bind":true,"@orientation":"|omitted|","@position":"|omitted|","@retainUserOffsets":true}
> message: should not have additional properties
> params: {"additionalProperty":"@bind"}
> file:
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> version: 4.0
>
> keyword: additionalProperties
> dataPath: X3D > Scene > -children > 2 > Viewpoint
> value:
> {"@bind":true,"@orientation":"|omitted|","@position":"|omitted|","@retainUserOffsets":true}
> message: should not have additional properties
> params: {"additionalProperty":"@bind"}
> file:
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> version: 4.0
>
> keyword: oneOf
> dataPath: X3D > Scene > -children > 2 > Viewpoint
> value:
> {"@bind":true,"@orientation":"|omitted|","@position":"|omitted|","@retainUserOffsets":true}
> message: should match exactly one schema in "oneOf"
> params: {"passingSchemas":null}
> file:
> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
> version: 4.0
>
> ==========================================
>
> Here's the commands to run x3dvalidate:
>
>
> $ git clone https://github.com/coderextreme/x3dvalidate
> $ cd x3dvalidate
> $ npm install
> $ node x3dvalidate.js flipper.json ... (other JSON files).
>
>
> Updates, enhancements to x3dvalidate welcome.
>
>
> Note, as far as I can tell, Ajv is MUCH faster than everit, so you may
> consider that when validating large numbers of files. It looks like
> everit reports more errors than Ajv. Plus, as far as I can tell, Ajv
> stack space doesn't need to be configured. Don't forget to revalidate
> after fixing validation errors.
>
>
> I'm hoping that I won't have to come out with another report, I just
> used penultimate because it's way cooler than final. I will report on
> any StackOverflowErrors I get.
>
> John
>
> On 4/26/21 10:29 PM, John Carlson wrote:
>>
>> Getting some Validation errors:
>>
>> grep Validation javaresults.txt
>>
>> <pre>
>>
>> json-schema 3.1 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/3/CADAssembly: #: 0 subschemas matched instead
>> of one
>> /c/x3d-code/www.web3d.org/x3d/content/examples/Basic/CAD/CADPartChildTransformationAlternativeB.json
>> json-schema 3.1 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/3/CADAssembly: #: 0 subschemas matched instead
>> of one
>> /c/x3d-code/www.web3d.org/x3d/content/examples/Basic/CAD/CADPartChildTransformationAlternativeC.json
>> json-schema 4.0 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/2/Viewpoint: #: only 1 subschema matches out of
>> 2
>> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>> json-schema 4.0 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/3/Transform: #: only 1 subschema matches out of
>> 2
>> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>> json-schema 4.0 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/4/Transform: #: only 1 subschema matches out of
>> 2
>> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>> json-schema 4.0 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/5/Transform: #: only 1 subschema matches out of
>> 2
>> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>> json-schema 4.0 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/13/AudioDestination: #: only 1 subschema
>> matches out of 2
>> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/Filters.json
>> json-schema 4.0 Validation error
>> org.everit.json.schema.InternalValidationException:
>> #/X3D/Scene/-children/1/Shape: #: 0 subschemas matched instead of one
>> /c/x3d-code/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/AudioSpatialSound/AllAudioGraphNodesTest.json
>>
>> </pre>
>>
>> On 4/26/21 10:25 PM, John Carlson wrote:
>>>
>>> Lots of validations are coming through now, with latest draft 07,
>>> latest everit. I don't know if I'll get any errors, because the
>>> everit run takes so long, and there's a StackOverflowError, but I am
>>> getting passing JSON files, so it looks okay.
>>>
>>> Check out:
>>>
>>> https://github.com/coderextreme/x3dschema
>>>
>>> The latest logs have not been checked in yet. TBD.
>>>
>>> I don't see anything significant that changed, except I don't
>>> version control everit. I assert that the version I have seems to
>>> work except for StackOverflowErrors.
>>>
>>> With the valid reports, I think it's likely we can track down the
>>> StackOverflow errors. Probably we should print out the file before
>>> validating it.
>>>
>>> Forks and pull requests welcome!
>>>
>>> John
>>>
>>> On 4/26/21 10:14 PM, John Carlson wrote:
>>>>
>>>> I backed out the change to the draft 07 schema, and put a printout
>>>> for when the X3D JSON example passed, and got confirmation that the
>>>> files were validated. I did get one stack overflow, which in my
>>>> case, might have dropped a lot of files, since I process them in
>>>> batches.
>>>>
>>>> Hmm. I don't think I can catch a Stack Overflow Exception?
>>>>
>>>> I will put the change to draft 07 schema back in and retest with
>>>> the "valid" log in place.
>>>>
>>>> John
>>>>
>>>> On 4/26/21 9:54 PM, John Carlson wrote:
>>>>>
>>>>> Indeed, there was a change!!!! to draft 07 JSON schema!
>>>>>
>>>>> Here's the diff:
>>>>>
>>>>> $ git diff -w json*
>>>>> diff --git a/json-schema-draft-07.json b/json-schema-draft-07.json
>>>>> index 5bee90e..fb92c7f 100644
>>>>> --- a/json-schema-draft-07.json
>>>>> +++ b/json-schema-draft-07.json
>>>>> @@ -64,6 +64,10 @@
>>>>> "type": "boolean",
>>>>> "default": false
>>>>> },
>>>>> + "writeOnly": {
>>>>> + "type": "boolean",
>>>>> + "default": false
>>>>> + },
>>>>> "examples": {
>>>>> "type": "array",
>>>>> "items": true
>>>>>
>>>>> I don't think this will affect X3D JSON schema, but it may affect
>>>>> everit and Ajv.
>>>>>
>>>>> Good catch!
>>>>>
>>>>> Retesting...
>>>>>
>>>>> John
>>>>>
>>>>> On 4/26/21 9:32 PM, John Carlson wrote:
>>>>>> Classpath which contains jars to download found in validate.sh in
>>>>>> x3dschema repository under my coderextreme account on GitHub.com
>>>>>>
>>>>>> John
>>>>>>
>>>>>> On Mon, Apr 26, 2021 at 7:32 PM John Carlson <yottzumm at gmail.com
>>>>>> <mailto:yottzumm at gmail.com>> wrote:
>>>>>>
>>>>>> https://github.com/coderextreme/x3dschema/blob/master/validate.sh
>>>>>> <https://github.com/coderextreme/x3dschema/blob/master/validate.sh>
>>>>>>
>>>>>> (Check CLASSPATH above, and location to download everit if
>>>>>> building everit from source.
>>>>>>
>>>>>> There are additional jars for running everit, to verify my
>>>>>> classpath, check everit’s pom.xml files.
>>>>>>
>>>>>> Next I will look into everit releases.
>>>>>>
>>>>>> John
>>>>>>
>>>>>> On Mon, Apr 26, 2021 at 7:24 PM John Carlson
>>>>>> <yottzumm at gmail.com <mailto:yottzumm at gmail.com>> wrote:
>>>>>>
>>>>>> https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/schema/x3d-4.0-JSONSchema.json
>>>>>> <https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/schema/x3d-4.0-JSONSchema.json>
>>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20210427/86d218e4/attachment-0001.html>
More information about the x3d-public
mailing list