[dna-issues] [JBoss JIRA] Commented: (DNA-363) Define node types via CND files

Randall Hauch (JIRA) jira-events at lists.jboss.org
Thu Apr 16 13:44:57 EDT 2009


    [ https://jira.jboss.org/jira/browse/DNA-363?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12462730#action_12462730 ] 

Randall Hauch commented on DNA-363:
-----------------------------------

The first step is to create a CND parser.  Using ANTLR 3 is probably by far the best approach, since that will require little of our code and will provide an excellent lexer/parser.  However, that means that we'd have a dependency on 'antlr-runtime.jar'.  This is probably acceptable (other libraries also have this, including Hibernate and Drools, to name just two).

However, considering that we also want to have a CND sequencer, it doesn't make sense that the JCR implementation should be a dependency of this sequencer.  Therefore, we should probably move the CND reading (and eventually generation) into a separate "dna-cnd" project that will depend on ANTLR (runtime) and "dna-graph".

This CND reader could also behave as a graph importer, writing the node type content to a org.jboss.dna.graph.io.Destination instance and using the JCR-prescribed "nt:nodeType", "nt:propertyDefinition", and "nt:childNodeDefinition" structures.  This would allow use to import the CND node types into a graph, whether that's a temporary in-memory repository (which is then processed by some other component), a real JCR repository (e.g., under the "/jcr:system"), or a configuration repository.  It also would be very straightforward to wrap this in a sequencer.  (We might even consider having a StreamSequencer subclass that wraps the SequencerOutput with a Destination, making it very easy to implement a sequencer from an importer.)

> Define node types via CND files
> -------------------------------
>
>                 Key: DNA-363
>                 URL: https://jira.jboss.org/jira/browse/DNA-363
>             Project: DNA
>          Issue Type: Feature Request
>          Components: JCR
>    Affects Versions: 0.3
>            Reporter: Randall Hauch
>
> Our JCR implementation should allow users to define the node types (with their property definitions and child node definitions) via CND files.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the dna-issues mailing list