Hi,

OAK-4567 introduces a new oak:Resource nodetype as an alternative to
nt:resource which has mix:referenceable.

I understand the idea of making that node non-referencable for
performance reasons, but why is nt:resource referenceable in the first
place?

builtin_nodetypes.cnd [1] has this definition

  [nt:resource] > mix:mimeType, mix:lastModified, mix:referenceable
    primaryitem jcr:data
    - jcr:data (BINARY) mandatory

but the JCR spec (JSR 283 10 August 2009) only has

  [nt:resource] > mix:mimeType, mix:lastModified
    primaryitem jcr:data
    - jcr:data (BINARY) mandatory

Introducing a new nodetype leaks into applications, removing the
default mix:referenceable mixin on nt:resource would be much simpler
(at the cost of a migration tool probably), and people can always
re-add the mixin if they really need it.

WDYT?

-Bertrand

[1] 
http://svn.apache.org/repos/asf/jackrabbit/oak/trunk/oak-core/src/main/resources/org/apache/jackrabbit/oak/plugins/nodetype/write/builtin_nodetypes.cnd

Reply via email to