JBoss.orgCommunity Documentation

ModeShape

Reference Guide


Target audience
1. Introduction to ModeShape
1.1. Use cases for ModeShape
1.2. What is metadata?
1.3. What is JCR?
1.4. Project roadmap
1.5. ModeShape modules
1.6. What's new?
I. Developers and Contributors
2. Developer tools
2.1. Development methodology
2.2. JDK
2.3. JIRA
2.4. Subversion
2.5. Git
2.6. Maven
2.6.1. Building
2.7. Continuous integration with Hudson
2.8. Eclipse IDE
2.9. Releasing
2.9.1. Building all artifacts and assemblies
2.9.2. Determine the version to be released
2.9.3. Release dry run
2.9.4. Prepare for the release
2.9.5. Perform the release
2.10. Summary
3. Testing
3.1. Unit tests
3.2. Integration tests
3.3. Writing tests
3.4. Technology Compatibility Kit (TCK) tests
II. ModeShape Core
4. Execution Context
4.1. Security
4.1.1. JAAS
4.1.2. Web application security
4.2. Namespace Registry
4.3. Class Loaders
4.4. MIME Type Detectors
4.5. Property factory and value factories
4.6. Summary
5. Graph Model
5.1. Names
5.2. Paths
5.3. Properties
5.4. Values and Value Factories
5.5. Readable, TextEncoder, and TextDecoder
5.6. Locations
5.7. Graph API
5.7.1. Using Workspaces
5.7.2. Working with Nodes
5.8. Requests
5.9. Request processors
5.10. Observation
5.10.1. Observable
5.10.2. Observers
5.10.3. Changes
5.11. Summary
6. Connector Framework
6.1. Connectors
6.2. Out-of-the-box connectors
6.3. Writing custom connectors
6.3.1. Creating the Maven 2 project
6.3.2. Implementing a RepositorySource
6.3.3. Implementing a RepositoryConnection
6.3.4. Testing custom connectors
6.4. Summary
7. Sequencing framework
7.1. Sequencers
7.2. Stream Sequencers
7.3. Path Expressions
7.4. Out-of-the-box Sequencers
7.5. Creating Custom Sequencers
7.5.1. Creating the Maven 2 project
7.5.2. Testing custom sequencers
7.6. Summary
III. ModeShape JCR
8. Configuring and Using ModeShape
8.1. ModeShape's JcrEngine
8.2. JcrConfiguration
8.2.1. Loading from a Configuration File
8.2.2. Loading from a Configuration Repository
8.2.3. Programmatic Configuration
8.2.4. Storing Configuration
8.3. Deploying ModeShape via JNDI
8.3.1. Example application using JCR and JNDI
8.3.2. Configuring JCR and JNDI
8.4. Using ModeShape via Maven
8.5. What's next
9. Using the JCR API with ModeShape
9.1. Obtaining JCR Repositories
9.2. Creating JCR Sessions
9.2.1. Using JAAS
9.2.2. Using Custom Security
9.2.3. Using HTTP Servlet security
9.2.4. Guest (Anonymous) User Access
9.3. JCR Specification Support
9.3.1. Level 1 and Level 2 (Required) Features
9.3.2. Optional Features
9.3.3. JCR Security
9.3.4. Built-In Node Types
9.3.5. Custom Node Type Registration
9.4. Summary
10. Querying and Searching using JCR
10.1. JCR Query API
10.2. JCR XPath Query Language
10.2.1. Column Specifiers
10.2.2. Type Constraints
10.2.3. Property Constraints
10.2.4. Path Constraints
10.2.5. Ordering Specifiers
10.2.6. Miscellaneous
10.3. JCR-SQL Query Language
10.4. JCR-SQL2 Query Language
10.4.1. Queries
10.4.2. Sources
10.4.3. Joins
10.4.4. Equi-Join Conditions
10.4.5. Same-Node Join Conditions
10.4.6. Child-Node Join Conditions
10.4.7. Descendant-Node Join Conditions
10.4.8. Constraints
10.4.9. And Constraints
10.4.10. Or Constraints
10.4.11. Not Constraints
10.4.12. Comparison Constraints
10.4.13. Between Constraints
10.4.14. Property Existence Constraints
10.4.15. Set Constraints
10.4.16. Full-text Search Constraints
10.4.17. Same-Node Constraint
10.4.18. Child-Node Constraints
10.4.19. Descendant-Node Constraints
10.4.20. Paths and Names
10.4.21. Static Operands
10.4.22. Bind Variables
10.4.23. Dynamic Operands
10.4.24. Ordering
10.4.25. Columns
10.4.26. Limit and Offset
10.5. Full-Text Search Language
10.5.1. Full-text Search Expressions
11. Accessing ModeShape Remotely
11.1. The ModeShape WebDAV Server
11.1.1. Configuring the ModeShape WebDAV Server
11.1.2. Deploying the ModeShape WebDAV Server
11.2. The ModeShape REST Server
11.2.1. Supported Resources and Methods
11.2.2. Configuring the ModeShape REST Server
11.2.3. Deploying the ModeShape REST Server
11.2.4. ModeShape REST Client API
11.3. Repository Providers
11.4. Summary
IV. Connector Library
12. In-Memory Connector
13. File System Connector
14. JPA Connector
14.1. Basic Model
14.2. Simple Model
15. JCR Connector
16. Federation Connector
16.1. Projections
16.2. Multiple Projections
16.3. Processing flow
16.4. Update operations
16.5. Configuration
16.6. Repository Source properties
17. Subversion Connector
18. JBoss Cache Connector
19. Infinispan Connector
20. JDBC Metadata Connector
V. Sequencer Library
21. Compact Node Type (CND) Sequencer
22. XML Document Sequencer
23. ZIP File Sequencer
24. Microsoft Office Document Sequencer
25. Java Source File Sequencer
26. Java Class File Sequencer
27. Image Sequencer
28. MP3 Sequencer
29. DDL File Sequencer
29.1. Example
30. Text Sequencers
30.1. Delimited Text Sequencer
30.2. Fixed Width Text Sequencer
VI. MIME Type Detector Library
31. Aperture MIME type detector
32. Writing custom detectors
33. Looking to the future