JBoss.org
Community Documentation
Next
ModeShape
Reference Guide
by
Randall M. Hauch
and
Brian Carothers
2.5.0.Final
Copyright © Red Hat, Inc.
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. Compiling and building
1.7. What's new?
I. ModeShape Core
2. Execution Context
2.1. Security
2.1.1. JAAS
2.1.2. Web application security
2.2. Namespace Registry
2.3. Class Loaders
2.4. MIME Type Detectors
2.5. Text Extractors
2.6. Property factory and value factories
2.7. Summary
3. Graph Model
3.1. Names
3.2. Paths
3.3. Properties
3.4. Values and Value Factories
3.5. Readable, TextEncoder, and TextDecoder
3.6. Locations
3.7. Graph API
3.7.1. Using Workspaces
3.7.2. Working with Nodes
3.8. Requests
3.9. Request processors
3.10. Observation
3.10.1. Observable
3.10.2. Observers
3.10.3. Changes
3.11. Summary
4. Connector Framework
4.1. Connectors
4.2. Out-of-the-box connectors
4.3. Writing custom connectors
4.3.1. Creating the Maven 3 project
4.3.2. Implementing a RepositorySource
4.3.3. Implementing a RepositoryConnection
4.3.4. Testing custom connectors
4.4. Summary
5. Sequencing framework
5.1. Sequencers
5.2. Stream Sequencers
5.3. Path Expressions
5.4. Out-of-the-box Sequencers
5.5. Creating Custom Sequencers
5.5.1. Creating the Maven 3 project
5.5.2. Testing custom sequencers
5.6. Summary
II. ModeShape JCR
6. Configuration
6.1. Configuring ModeShape
6.1.1. Configuration Files
6.1.2. Programmatic Configuration
6.1.3. Loading from a Configuration Repository
6.2. JCR Repository options
6.3. Repository system content
6.4. Query index directory
6.5. Clustering
6.5.1. Enabling Clustering in ModeShape
6.5.2. JGroups configuration
6.6. Using ModeShape in Web Applications
6.6.1. Deploying ModeShape to JBoss AS
6.6.2. Deploying ModeShape to Tomcat
6.7. Setting the Classpath
6.7.1. Building against ModeShape via Maven
6.7.2. Add dependencies for logging
6.7.3. Building against ModeShape via JARs
6.8. What's next
7. Using the JCR API with ModeShape
7.1. What's new in JCR 2.0?
7.1.1. Connecting
7.1.2. Identifiers
7.1.3. Binary Values
7.1.4. Node Type Management
7.1.5. Queries
7.1.6. Workspace Management
7.1.7. Observation
7.1.8. Locking
7.1.9. Versioning
7.1.10. Importing and Exporting
7.1.11. Shareable Nodes
7.1.12. Orderable Child Nodes
7.1.13. Paths
7.1.14. getItem(String)
7.2. Obtaining a JCR Repository
7.2.1. Configuration File URLs
7.2.2. Using JNDI URLs
7.2.3. Cleaning Up after JcrRepositoryFactory
7.3. ModeShape's JcrEngine
7.4. Creating JCR Sessions
7.4.1. Using JAAS
7.4.2. Using HTTP Servlet security
7.4.3. Guest (Anonymous) User Access
7.4.4. Using Custom Security
7.5. JCR Specification Support
7.5.1. Required features
7.5.2. Optional features
7.5.3. TCK Compatibility features
7.5.4. JCR Security
7.5.5. Built-In Node Types
7.5.6. Custom Node Type Registration
7.6. Summary
8. Querying and Searching using JCR
8.1. JCR Query API
8.2. JCR XPath Query Language
8.2.1. Column Specifiers
8.2.2. Type Constraints
8.2.3. Property Constraints
8.2.4. Path Constraints
8.2.5. Ordering Specifiers
8.2.6. Miscellaneous
8.3. JCR-SQL Query Language
8.3.1. Queries
8.4. JCR-SQL2 Query Language
8.4.1. Queries
8.4.2. Sources
8.4.3. Joins
8.4.4. Equi-Join Conditions
8.4.5. Same-Node Join Conditions
8.4.6. Child-Node Join Conditions
8.4.7. Descendant-Node Join Conditions
8.4.8. Constraints
8.4.9. And Constraints
8.4.10. Or Constraints
8.4.11. Not Constraints
8.4.12. Comparison Constraints
8.4.13. Between Constraints
8.4.14. Property Existence Constraints
8.4.15. Set Constraints
8.4.16. Full-text Search Constraints
8.4.17. Same-Node Constraint
8.4.18. Child-Node Constraints
8.4.19. Descendant-Node Constraints
8.4.20. Paths and Names
8.4.21. Static Operands
8.4.22. Bind Variables
8.4.23. Subqueries
8.4.24. Dynamic Operands
8.4.25. Ordering
8.4.26. Columns
8.4.27. Limit and Offset
8.4.28. Pseudo-columns
8.4.29. Example JCR-SQL2 queries
8.5. Full-Text Search Language
8.5.1. Full-text Search Language
8.6. JCR Query Object Model (JCR-QOM) API
9. Accessing ModeShape Remotely
9.1. The ModeShape WebDAV Server
9.1.1. Configuring the ModeShape WebDAV Server
9.1.2. Deploying the ModeShape WebDAV Server
9.2. The ModeShape REST Server
9.2.1. Supported Resources and Methods
9.2.2. Configuring the ModeShape REST Server
9.2.3. Deploying the ModeShape REST Server
9.2.4. ModeShape REST Client API
9.3. Repository Providers
9.4. Summary
III. Connector Library
10. In-Memory Connector
11. File System Connector
12. JPA Connector
12.1. Simple Model
13. JCR Connector
14. Federation Connector
14.1. Projections
14.2. Multiple Projections
14.3. Processing flow
14.4. Update operations
14.5. Configuration
14.6. Repository Source properties
15. Subversion Connector
16. JBoss Cache Connector
17. Infinispan Connector
17.1. Considerations for Distributed Sources
18. JDBC Metadata Connector
IV. Sequencer Library
19. Compact Node Type (CND) Sequencer
19.1. Example
20. XML Document Sequencer
20.1. Example
21. XML Schema Document (XSD) Sequencer
21.1. Example
21.2. Node Types
21.3. Configuration
22. Web Service Definition Language (WSDL) 1.1 Sequencer
22.1. Example
22.2. Node Types
22.3. Configuration
23. ZIP File Sequencer
23.1. Example
24. Microsoft Office Document Sequencer
24.1. Example
25. Java Source File Sequencer
26. Java Class File Sequencer
27. Image Sequencer
28. MP3 Sequencer
28.1. Example
29. DDL File Sequencer
29.1. Example
30. Text Sequencers
30.1. Delimited Text Sequencer
30.2. Fixed Width Text Sequencer
31. Teiid Relational Model Sequencer
31.1. UUIDs
31.2. Node Types
31.2.1. XMI Namespace
31.2.2. Core Namespace
31.2.3. Relational Namespace
31.2.4. JDBC Source Namespace
31.2.5. Transformation Namespace
31.3. Default values
31.4. Annotations
31.5. Tags
31.6. Transformation
31.7. Configuration
31.8. Example
32. Teiid VDB Sequencer
32.1. UUIDs and References
32.2. Node Types
32.2.1. VDB Namespace
32.3. Configuration
32.4. Example
V. MIME Type Detector Library
33. Aperture MIME type detector
34. Writing custom detectors
VI. Text Extractor Library
35. Teiid text extractor
36. Tika text extractor
37. Writing custom text extractors
38. Looking to the future
Next
Target audience