10 com.umlet.element.Class 10 20 610 30 JCR bg=green com.umlet.element.Class 10 300 610 30 Oak API bg=green com.umlet.element.Class 10 190 610 80 JCR Delegate -- SessionDelegate, NodeDelegate, etc. - the "business logic" of implementing the JCR API based on the simpler Oak concepts bg=yellow com.umlet.element.Class 10 80 610 80 JCR Impl -- SessionImpl, NodeImpl, etc. - namespace mapping - perform() mechanism (autorefresh, session sync., etc.) bg=yellow com.umlet.element.Class 10 360 610 80 Oak core -- Tree, SecureNodeBuilder, etc. - takes care of access controls, node ordering, etc. bg=yellow com.umlet.element.Class 10 470 610 30 NodeStore bg=green com.umlet.element.Class 10 650 230 60 SegmentMK bg=yellow com.umlet.element.Class 270 650 230 60 DocumentMK bg=yellow com.umlet.element.Class 470 750 130 80 BlobStore -- blobs contain binary data bg=green com.umlet.element.Class 220 880 190 30 MongoDB bg=gray com.umlet.element.Class 10 880 190 30 Tar files bg=gray com.umlet.element.Class 430 880 190 30 RDBMS bg=gray com.umlet.element.Relation 280 20 50 80 lt=<<- 30;30;30;60 com.umlet.element.Relation 280 130 50 80 lt=<- 30;60;30;30 com.umlet.element.Relation 280 240 50 80 lt=<- 30;60;30;30 com.umlet.element.Relation 280 300 50 80 lt=<<- 30;30;30;60 com.umlet.element.Relation 280 410 50 80 lt=<- 30;60;30;30 com.umlet.element.Relation 360 470 50 200 lt=<<- 30;30;30;180 com.umlet.element.Relation 90 470 50 200 lt=<<- 30;30;30;180 com.umlet.element.Class 330 750 130 80 DocumentStore -- documents contain tree data (nodes, non-binary props) bg=green com.umlet.element.Relation 360 680 50 90 lt=<- 30;70;30;30 com.umlet.element.Relation 460 680 50 90 lt=<- 30;70;30;30 com.umlet.element.Class 50 750 130 80 SegmentStore -- segments contain both tree and binary data bg=green com.umlet.element.Relation 90 680 50 90 lt=<- 30;70;30;30 com.umlet.element.Class 190 750 130 80 DataStore -- binary data in Jackrabbit 2.x data stores bg=green com.umlet.element.Relation 260 680 50 90 lt=<. 30;70;30;30 com.umlet.element.Relation 190 680 50 90 lt=<. 30;70;30;30 com.umlet.element.Relation 360 800 50 100 lt=<- 30;80;30;30 com.umlet.element.Relation 360 800 190 100 lt=<- 170;80;170;50;30;50;30;30 com.umlet.element.Relation 90 800 50 100 lt=<- 30;80;30;30 com.umlet.element.Relation 90 800 170 100 lt=<- 150;80;150;50;30;50;30;30 com.umlet.element.Relation 360 800 190 100 lt=<- 30;80;30;50;170;50;170;30 com.umlet.element.Relation 500 800 50 100 lt=<- 30;80;30;30