[ 
https://issues.apache.org/jira/browse/SLING-7066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16135112#comment-16135112
 ] 

Bertrand Delacretaz commented on SLING-7066:
--------------------------------------------

Maybe it's better to disallow mixins in the bracketed statement that defines 
defaults?

So this would be invalid for example:

{code}
create path (sling:Folder mixin mix:A) /var/foo
{code}

And a valid statement would be 
{code}
create path (sling:Folder) /var/foo(mixin mix:A)
{code}

I don't think setting the same mixin on each level of a path is a common use 
case, and if that's really needed that remains possible.

WDYT?


> Support mixins in repoinit "create path" statements
> ---------------------------------------------------
>
>                 Key: SLING-7066
>                 URL: https://issues.apache.org/jira/browse/SLING-7066
>             Project: Sling
>          Issue Type: New Feature
>          Components: Repoinit
>            Reporter: Bertrand Delacretaz
>            Assignee: Timothee Maret
>            Priority: Minor
>
> The repoinit "create path" statement currently supports nodetypes but no 
> mixins, we should add support for them.
> The current create path syntax is like
> {code}
> create path (sling:Folder) /var/discovery(nt:unstructured)/somefolder
> create path /one/two/three
> create path /three/four(nt:folk)/five(nt:jazz)/six
> {code}
> Where the first bracketed statement, before the path, is the default nodetype 
> for all subpaths, and each subpath can have a specific nodetype.
> To add mixin support I suggest the syntax of these examples for these 
> bracketed statements:
> {code}
> (sling:Folder mixin mix:A, mix:B)
> (nt:unstructured mixin mix:C)
> (mixin mix:A)
> (mixin mix:A, mix:B)
> {code}
> The last two forms without a nodeteype meaning "set mixins only but keep the 
> default nodetype", which in this example
> {code}
> create path (sling:Folder) /var/foo(mixin mix:B)
> {code}
> means /var/foo is of type sling:Folder with mixin mix:B
> whereas in this example
> {code}
> create /var/bar(mixin mix:C)
> {code}
> /var/bar uses the default type defined by /var's type, with mix:C added.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to