[x3d-public] Well, @rotation errors (normalization) all originals; pajekOriginals; getting serious about X3D JSON Schema in draft-07

John Carlson yottzumm at gmail.com
Sun Apr 4 20:55:12 PDT 2021


One can remove google-collections-1.0.jar from the list.

John

On 4/4/21 10:29 PM, John Carlson wrote:
> I guess my idea at this point would be to download Everit jar from 
> github releases, and try to apply it to the X3D JSON schema and a few 
> example files in a build.xml
>
> We need to be aware in this case, which other jars need to be 
> downloaded, perhaps.  I can provide a list that got me going:
>
> /home/${USER}/.m2/repository/com/google/re2j/re2j/1.1/re2j-1.1.jar
>
> /home/${USER}/.m2/repository/com/google/collections/google-collections/1.0/google-collections-1.0.jar 
>
>
> /home/${USER}/.m2/repository/org/json/json/20190722/json-20190722.jar
>
> /home/${USER}/.m2/repository/com/damnhandy/handy-uri-templates/2.1.8/handy-uri-templates-2.1.8.jar 
>
>
> These would need to be downloaded from secure, reliable source, if not 
> found in the everit release.
>
> Note that this list is the one I use.  There are more up-to-date jars, 
> as listed in:
>
> json-schema/core/pom.xml
>
> Likely, it would be wise to upgrade the classpath:
>
>
>         <dependency>
>             <groupId>com.google.re2j</groupId>
>             <artifactId>re2j</artifactId>
>             <version>1.3</version>
>         </dependency>
>         <dependency>
>             <groupId>org.json</groupId>
>             <artifactId>json</artifactId>
>             <version>20201115</version>
>         </dependency>
>
> John
>
> On 4/3/21 8:23 PM, Don Brutzman wrote:
>> Hmmm. Several twists and turns here.
>>
>> 1. We already have a HelloWorld.json (of course) and it looks like 
>> yours strips out a bunch of stuff an inserts a Transform
>>
>>   "@rotation":[2,1,0,3]
>>
>> There is a Special Place in Hell where everything has the same name.  
>> Let's not go there, please...
>>
>> All of our original models have .x3d in version control, with other 
>> file encodings and language bindings autogenerated.
>>
>> If you want to create a TestRotationsNormalization.x3d scene, then a 
>> good place for that to be maintained will be with the 15 other test 
>> scenes in
>>
>> * https://www.web3d.org/x3d/content/examples/Basic/development/
>>
>> Suggest you will want both an SFRotation (such as the Transform 
>> @rotation above) and an MFRotation, perhaps most familiar node might 
>> be an OrientationInterpolator.
>>
>> Please craft a TestRotationsNormalization.x3d scene and we can add it 
>> to the examples archive.
>>
>> ---
>>
>> 2.  Glad that you are handling pajekOriginals by postprocessing. 
>> Since these are "original" models created by a tool, we wont' be 
>> changing them.
>>
>> * Pajek Analysis and visualization of very large networks
>>   http://mrvar.fdv.uni-lj.si/pajek
>>
>> * Pajek manual, p. 80, chapter 5 Exports to EPS/SVG/X3D/VRML
>> https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.726.5730&rep=rep1&type=pdf 
>>
>>
>> Perhaps we should come up with a metadata scheme to indicate when a 
>> model has known errors so that automatic corrections are disable and 
>> diagnostics are silenced.
>>
>> ---
>>
>> 3. Primary task remains.
>>
>> What I have been referring to with HelloWorld was confirming that 
>> JSON Schema and JSON X3D model are truly validating, and the patterns 
>> to accomplish that.  Silent (non-reporting) command-line invocations 
>> aren't strong evidence and don't add much insight.
>>
>> As ever, the JSON Schema patterns are what we want to focus on using 
>> JSON Schema Draft 7.  We should update our X3D JSON pages to match.
>>
>> * https://json-schema.org
>>
>> These people remain a curious bunch.  While draft-07 now appears well 
>> supported, they are up to releasing draft 20.
>>
>> The following is their latest documentation, written for draft-07 but 
>> updated in 2021.
>>
>> * https://json-schema.org/understanding-json-schema/
>>
>> Once patterns are confirmed we can look at X3D JSON Schema 
>> autogeneration from X3DUOM.
>>
>> Based on your emails one might deduce that you may have such a thing, 
>> but it has not been reviewed and not been integrated. Please let's 
>> backtrack and get on firm footing.
>>
>> If you do have a single best-effort X3D JSON schema, please provide a 
>> stable url so that we can study it.
>>
>> ---
>>
>> 4. Everit
>>
>> Are you still getting this from the following site?
>>
>> * https://github.com/everit-org/json-schema
>>
>> * https://github.com/everit-org/json-schema/releases
>>
>> ---
>>
>> 5. Next
>>
>> This week I cannot meet Monday but have sent you an update to meet on 
>> Web3D line Tuesday 14-1500 pacific, hope that can work for you.
>>
>> Thanks for continued pounding on the problem.  Let's hammer this into 
>> a repeatable understandable result, rather than scattered pieces.
>>
>> On 4/2/2021 10:50 PM, John Carlson wrote:
>>>
>>> Here's a small test (attached.).
>>>
>>> John
>>>
>>> On 4/3/21 12:44 AM, John Carlson wrote:
>>>> Likely we need a very small test case. I will work on one.
>>>>
>>>> John
>>>>
>>>> On 4/3/21 12:42 AM, John Carlson wrote:
>>>>> No worries about lax or non-lax validation.  The only cases (1800)
>>>>> showing validation errors with @rotation are pajekOriginals.  This is
>>>>> easily handled in a post process filter. Sorry for not filtering them
>>>>> earlier. Everit results next (Ajv doesn't show up, likely because
>>>>> both schemas fail).
>>>>>
>>
>>
>>>
>>>
>>> The strange thing is, the autogenerated code did not throw any 
>>> errors with Everit for rotation.
>>>
>>> On 4/2/21 11:07 PM, John Carlson wrote:
>>>> It appears that all the rotation errors were in originals:
>>>>
>>>> https://coderextreme.net/rot.txt
>>>>
>>>> So I could go either way with the auto-generated X3D JSON schema, 
>>>> pasting fixed text or generating less restrictive code.
>>>>
>>>>
>>>> John
>>>>
>>
>>
>>>>> "@rotation":[2,1,0,3],
>>>>>
>>>>> I made this change to show the errors.  I do not know why the hand
>>>>> generated schema errors do not show up.  That seems to be an issue.
>>>>> Thanks for the backwards step Don.
>>>>>
>>>>> So strict validation is still in place, as 2 > 1.
>>>>>
>>>>> So the current issue seems to be the hand generated schema. The
>>>>> definitions are in different order.   Changing order doesn't fix 
>>>>> things.
>>
>> We need to get on the "same sheet of music" with the same best-case 
>> schema.
>>
>>>>> I guess i would propose to file an issue with Everit about the two
>>>>> schemas and the HelloWorld.json
>>>>>
>>>>> Good catch!
>>>>>
>>>>> John
>>
>> If we can apply Everit in the Ant build.xml then we can repeat the 
>> error.  At that point any problem report becomes measurably fix-able.
>>
>>>>> On 4/2/21 11:22 PM, Don Brutzman wrote:
>>>>>> Please backtrack.  Not clear you heard what we said this morning or
>>>>>> posted.
>>>>>>
>>>>>> Don't worry about rotation normalization now please. Lax validation
>>>>>> is good, normalize() routines in our libraries can help.
>>>>>>
>>>>>> You are showing results from gigantic visualization files done by a
>>>>>> grad student with the pajek tool eleven years ago.
>>>>>>
>>>>>> Sorry but can't keep up if we can't do Hello World.
>>>>>>
>>>>>> Thanks John.
>>
>> all the best, Don



More information about the x3d-public mailing list