2. Fedora 4
• A repository
• store objects, RDF, SPARQL, pluggable
• Beta release in June
• RESTful HTTP API
• primary way for applications to work with a
Fedora 4 repository
3. Glossary
• Node: Primary organizational structure in the repository.
• name, unique identifier, path
• 0* properties / child nodes
• Node types
• Object (aka Fedora Object)
• A node type with the Primary type of [nt:folder] and a Mixin type of [fedora:object]. It is the
primary organizational node in a Fedora repository.
• a fully qualified name including a namespace and local name. e.g. pid:1
• Workspace
• The repository is divided into separate named workspaces, and it is within these
workspaces that all content is stored as a tree-structure of nodes.
• All nodes in the tree are accessible via navigation (path) or via query result.
• E.g. A default workspace. Top of the tree-structure is the root node (“/”)
4. Fedora 4 user interface
• Navigation Bar
Navigation Bar
Object Title
Object Path
Featured Properties
Children
Node Properties
Inlined Resources
7. Techniques
• Java 7: Implemented using some Java 7 new features
• Maven3: Compile and build
• Git / GitHub: Source code control
• Eclipse: IDE
• Jetty
• Tomcat 7
• JUnit
11. Pivotal Tracker workflow
• A request is a story. Owner works on a story. (developers)
• ICEBOX
• Stories in the Icebox may not have delivery criteria. They may be rejected by the product
owner from the Icebox.
• BACKLOG
• Stories that have been accepted are moved to the Backlog.
• SPRINTS
• Stories that have been started must be moved to a sprint. Stories are finished and delivered
in sprints.
• Pivotal Tracker States
• finished
• delivered
• accepted/rejected
13. Join the dev community
• Contributor
• Committer
• Official Fedora Dev document
• IRC
• Pivotal Tracker: https://www.pivotaltracker.com/s/
projects/684825
14. Local Setting
• Fork Fedora source in GitHub
• Clone a branch from my Fork to local desktop
• MVN commands (code test/verify/style check)
• Fedora http api
• Make change
15. Fedora Commons Repository 4 - Labs
• https://github.com/fcrepo4-labs
• puppet-fcrepo: The fcrepo module installs, configures, and
manages Fedora 4 in a clustered environment.
• fcrepo-aws-puppet: This Puppet script starts an AWS EC2
instance, then deploys fcrepo-webapp to a stand-alone
Tomcat7 application server.
• Modeshape: ModeShape is a distributed, hierarchical,
transactional, and consistent data store with support for
queries, full-text search, events, versioning, references, and
flexible and dynamic schemas.
• many others.
16. Fedora 4 in AWS
• AWS EC2 instance
• Ubuntu 12.10 and Mac OS X 10.6.
• Tomcat 7
• Fedora webapp
17. New Development
• Java Client Library
• July 10
• https://wiki.duraspace.org/display/FF/Design+-
+Java+Client
• https://wiki.duraspace.org/display/FF/Design+-
+Java+Client+Library
• https://github.com/fcrepo4-labs/fcrepo4-client
18. Fedora VM spec for Dev
• Software:
• OS: Ubuntu 12.04
• Kernel: 3.2.0-34-generic (x86_64)
• Compiler: GCC 4.6