[x3d-public] x3d case correction tool

Leonard Daly web3d at realism.com
Tue Nov 3 17:53:25 PST 2015


On 11/3/2015 1:57 PM, Andreas Plesch wrote:
:
:

>
> The use case for me is that it required quite a bit of repetitive 
> effort to get x3d output generated by the vrmath2.net 
> <http://vrmath2.net> editor such as
>
> https://vrmath2.net/embed/?url=/sites/default/files/user/u342/x3d/helical_gears_smooth_opt.x3d
>
> into a conforming format so that use of x3d-edit and xj3d would start 
> to make more sense. A lot of that effort was just to get the case 
> correct. Most of the remaining effort was to get rid of the 
> nonconforming attributes such as id. (Perhaps there is way to keep 
> nonconforming attributes around as comments).

I thought that 'id' was acceptable because it is needed so much in XML 
and especially HTML. If it is not, it will need to be in X3D V4.


> Since html5 is (in general?) not case sensitive,

HTML5 tags and attribute names are case insensitive. I posted the W3C 
reference in a previous email (last paragraph of 
http://www.w3.org/TR/html5/syntax.html#writing)


> prose on x3d vocabulary within a html5 context would presumably be 
> about what the recommended, case-sensitive form is for reasons of 
> validation, compatibility with xml and other contexts, and general 
> readability versus what the presumably accepted but discouraged 
> case-insensitive form is. Or is it something else it should address ?


X3D in HTML5 needs to be case insensitive to follow the rules and 
conventions for that.

Also need to identify tags with children that need to be closed (e.g., 
<transform>...</transform>)
Tags that sometimes don't have children - these can be self-closing 
(e.g. <transform USE='OtherTransform' />
Tags that are void (no closing indicator). HTML examples are <br>, 
<img>, etc.
See http://www.w3.org/TR/html5/syntax.html#start-tags for details


Leonard Daly




>
> Andreas
>
>
>
>
>
> On Tue, Nov 3, 2015 at 2:10 PM, Don Brutzman <brutzman at nps.edu 
> <mailto:brutzman at nps.edu>> wrote:
>
>     Thanks for the good thinking.
>
>     Some time ago, when first looking at HTML lower-case elements and
>     X3DOM integration, there was good dialog on the mail lists.  No
>     doubt available in the archives.
>
>     It would appear that both forms (CamelCase and
>     lowercase/miXedcAsE) are desirable for X3D authors depending on
>     their html publication context.
>
>     At that stage I created a stylesheet that creates a table for
>     producing lower-case version of X3D element names and attributes. 
>     It walks the X3D schema in a manner similar to what you are
>     suggesting.
>
>     http://www.web3d.org/x3d/stylesheets/
>     http://www.web3d.org/x3d/stylesheets/X3dElementsLowerCaseTable.html
>     http://www.web3d.org/x3d/stylesheets/X3dAttributesLowerCaseTable.html
>     http://www.web3d.org/x3d/stylesheets/X3dElementsAttributesLowerCaseTable.txt
>     http://www.web3d.org/x3d/stylesheets/X3dElementsAttributesLowerCaseTableConstruction.xslt
>
>     Just tuned them up a little.  Might need more precise filtering to
>     avoid duplicates, etc.
>
>     Hopefully this is useful.
>
>     As you point out, the X3D Tidy stylesheet looks at this task too.
>
>     http://www.web3d.org/x3d/stylesheets/X3dTidy.html
>     http://www.web3d.org/x3d/stylesheets/X3dTidy.xslt
>
>     At this point, it might be good to articulate any use cases and
>     the relevant HTML5 prose on case sensitivity.
>
>     Open source.  All suggestions, improvements or additions welcome.
>
>
>     On 11/3/2015 9:34 AM, Andreas Plesch wrote:
>
>         Since the idea of having a x3d document which is conforming as
>         much as possible is attractive, I am thinking of a tool which
>         corrects element names and attribute names to their correct
>         case sensitive spelling. Is there such a tool ?
>
>         In principle I think it could work by:
>         1) extract all element and attribute names from the .dtd
>         and/or schema
>         2) go through all elements (recursively) in (nonconforming)
>         x3d document
>         2a)  normalize element name to lower-case and see if there is
>         a corresponding normalized node name in dtd
>         2b) if there is replace with correct, case sensitive element name
>            if not flag as unknown (or ignore, optionally eliminate)
>         2c) do the same for all used attribute names
>
>         This would work for most if not all names since they can all
>         (most?) be distinguished in a case insensitive manner.
>
>         The tool of choice would be a xsl style sheet which may have
>         to be generated by another stylesheet which processes the
>         .dtd/schema. What would be other strategies (going through
>         json) ? How would one go about this in more detail ? Perhaps
>         the x3d-tidy.xsl style sheet is a starting point ? It looks
>         daunting.
>
>         However, I would probably start much more straightforwardly by
>         looking at
>         http://www.web3d.org/specifications/X3dDoctypeDocumentation3.3.html
>         and
>         http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3.html
>         to assemble a list and then use unix tools such as sed/awk and
>         such
>         to transform the x3d. What is used to generate the above
>         documentation from the .dtd/xsd ?
>
>         Any input much appreciated,
>
>         Andreas
>
>
>
>
>         _______________________________________________
>         x3d-public mailing list
>         x3d-public at web3d.org <mailto:x3d-public at web3d.org>
>         http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
>
>
>     all the best, Don
>     -- 
>     Don Brutzman  Naval Postgraduate School, Code USW/Br
>     brutzman at nps.edu <mailto:brutzman at nps.edu>
>     Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA
>     +1.831.656.2149 <tel:%2B1.831.656.2149>
>     X3D graphics, virtual worlds, navy robotics
>     http://faculty.nps.edu/brutzman
>
>
>
>
> -- 
> Andreas Plesch
> 39 Barbara Rd.
> Waltham, MA 02453
>
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org


-- 
*Leonard Daly*
X3D Co-Chair
Cloud Consultant
President, Daly Realism - /Creating the Future/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20151103/7e6a8518/attachment.html>


More information about the x3d-public mailing list