This group is designed to aggregate content to the entire VRE development team.
Enabling Networking in VirtualBox on Mac OS X
These are the steps to get sane networking to work when using VIrtualBox on Mac OS X, specifically running the Debian Lenny image from the Evergreen development site here.
By default, VirtualBox doesn't let you connect from your host to the guest, to set this up perform the following steps, assuming you have VirtualBox up and running:
- Shut down the image
$ sudo shutdown -h now - In VirtualBox's settings for the image, click on Networking and set your settings to match the ones below:

Set Attached to: to Host Interface and choose "Parallels Host-Guest" under Host Interfaces. You need to have Parallels installed to have "en2: Parallels Host-Guest available. Without Parallels it may be possible to set up a virtual interface in Mac OS X's system settings to serve the same purpose. Click OK when done. You may now start up the guest image again. - In System Preferences, go to Networking and choose Parallels Guest-Host from the list of active network interfaces on the left. Enter the following settings:

Set Configure to "Manually", and set IP Address to 192.168.1.1, and leave the rest blank. Click Apply to activate the interface with the new settings. - Now we must set up networking on the Debian guest. We'll do this the old-fashioned way, in a terminal, edit the file /etc/network/interfaces so it looks like this:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
auto eth1
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.1
broadcast 192.168.1.255
gateway 192.168.1.1
# iface eth1 inet dhcp
auto eth1 tells Debian to activate the interface when you activate the network, e.g. at boot time. 'static' means use a static IP. Gateway should be the same as the value you set for 'IP Address' in OS X's system settings in the previous step. - Next, edit /etc/resolv.conf to point to a working DNS server. For UPEI's it would look like this:
- Now, re-start networking on the Debian guest computer.
% sudo /etc/init.d/networking restart
Once this is done you should be able to ping the host computer from the guest, and vice-versa. - We need to set up internet connection sharing on the host computer to allow the Debian guest computer to access the outside network. External computers will not be able to connect to the guest computer unless you use port-forwarding, but it's probably best to leave it as is. Go to System Preferences and click on Sharing. Choose "Internet Sharing" in the left-hand sidebar and change your settings to match the ones below:

For "Share your connection from " choose Ethernet (if that's your main connection to the outside world. It may also be Airport. For "To computers using" enable "Ethernet Adapter (en2)". This is the same as "Parallels Host-Guest" that you set up earlier. Finally enable the checkbox beside Internet Sharing to activate these settings. You should now be able to access external web sites by name from the Debian guest computer. - Finally, we will set up SFTP on the guest computer so that you can easily transfer files to and from the guest and host, and use tools like TextWrangler's Open File on FTP/SFTP Server feature to easily edit files on the guest. Install ssh on the guest with the following commands:
% sudo apt-get update
% sudo apt-get dist-upgrade # Optional, but doesn't hurt
% sudo apt-get install ssh
Installing ssh enables SFTP by default. You can log in using the evergreen username, but you may want to use the opensrf account instead so you can edit files inside the /openils/ directory of the Evergreen tree.
- aoneill's blog
- Printer-friendly version
- Login or register to post comments
Moved Login Link on Dev
I removed the block on the right for logging in.
It's now a Link in the Menu bar known as the SuckerFish Menu beside the Feedback and Forum buttons.
When logged, in the text on the button becomes My Account.
I like this - What do you think?
- fgjohnson's blog
- Login or register to post comments
General Fedora-Drupal
This is a general description of the UPEI Fedora/Drupal system and how we are using bth products, on their own and integrated. This is based on a description created by Paul Pound on March 28, 2008.
- General System and Components
- Fedora 2.2.1 with fgsearch 1.1, Kowari (xx) and Postgres (XX).
- Drupal 5.x, php5, and mysql (XX).
- Lucene (XX), curl (XX)
- api-a (api-a includes methods to mostly consume the objects) is locked down so authorization is required.
- api-m (mangement api used for ingest etc.) needs authorization as well and can only be used from specific ip addresses. Both of these settings are pretty common but some users probably have api-a more open and rely on the xacml security policies.
- We have drupal on one box, Fedora on another and the databases are on a third.
- Search and Display
- Currently we send rest type calls to Lucene via Curl. The results are provided in xml that we display using an xslt to transform the results to html.
- Collection listing: we send an itql query to Fedora's resource index (in our case Kowari as mptStore does not understand itql) via curl/rest. We receive xml results and for the modules in test we are parsing the xml in php but will be switching to xsl. This will give us much more flexibility as we can store the xsl with the collection object.
- Datastream listing: we send a soap call to Fedora that returns an array which is displayed using php code.
- Metadata display: we are grabbing the QDC or DC datastream from the object via soap. Since the returned datastream is xml we are using an xsl to transform the stream to html.
- Editing and Ingest
- To edit the metadata we grab the QDC/DC xml stream and parse it to create a html form. In our standalone app we use an xsl, but our newer Drupal-based technique uses Drupal's form api: after parsing it in php we pass a php array to Drupal which builds the form.
- For ingest each collection will have a collection_policy datastream (if it doesn't have one we can fallback to a standard that is part of the module). The collection_policy defines what content_models are allowed as part of this collection. A content_model in our case defines what type of file can be ingested and what to do to that file (such as create thumbnail etc).
- All the management functions use soap to add, purge, modify, ingest etc.
- Drupal
- We are mapping drupal paths/menus to php functions.
- We use the form api for the forms.
- We use IMCE to upload the files. By using IMCE we can give file size quotas, and storage limits to drupal roles. We can also limit what type of files they are allowed to upload using IMCE. IMCE is the same widget tinyMCE uses to upload files.
- We rely on clean urls and the drupal file system being public. Initially we tried to support normal urls and clean urls but it gets to hard to maintain when there are so many paths to something.
- We have several permissions you can configure which include add fedora datastreams, edit fedora metadata, ingest new fedora objects, purge objects and datastreams, and view fedora collection.
- Specific roles can have a range of permissions so you can define who can do what.
Standard Dublin core vs newer dcterms or Qualified Dublin Core
We need to discuss/figure out what we are going to do longer term regarding Dublin Core. It should not be a hugh problem to go with newer dcterms version. There may be a few issues.
- OAI harvesting - This can probably be addressed by a dissemenator if a harvester expects a certain format (would take a little time to write a xslt or something to convert the datastream)..
- Lucene Indexing - Will need to add an item to the FoxmlToLucene.xsl to make the datastream searchable
Disposible Learning Objects
It's easy to create disposible Learning objects with JING.
If you find out something useful - Please consider creating a DLO and submitting it to the Teaching and Training page.
Refworks tag Legend
This may help us map refworks to DC. The "map to DC.X" references were added by Mark. The challenge with this one is that references could be books or journal articles (mostly, with a few other types possible). For elements like Volume, Issue, Publisher, etc., they map onto a compound DC equivalent and in we would assume that elements describing a journal article or a book will not appear in the same record. Refworks elements without a "map to" would not be duplicated in the DC.
I'm not sure where the UL (URL) Refworks field would go, as I'm not sure where we are putting that link field in the current model. Wherever it need to go to provide a link to the object.
Another question is if we would use the dc. variant or dcterms. variant of the DCMI. The dcterms. namespace is richer, but we would need to decide on this for all collections - I think :-) we may have already decided this too, so I may be rambling (check here for dc namespace discussion). The mapping here reflects the dc. namespace. (Mark)
Tag legend
*****
- RT=Reference Type
- SR=Source Type | map to dc.type
- ID=Reference Identifier | map to dc.identifier (1st part opf 2)
- A1=Primary Authors | map to dc.creator
- T1=Primary Title | map to dc.title
- JF=Periodical Full | map to dc.source (1st of 5 parts Journal)
- JO=Periodical Abbrev
- YR=Publication Year | map to dc.date
- FD=Publication Data,Free Form
- VO=Volume | map to dc.source (2nd of 5 parts Journal)
- IS=Issue | map to dc.source (3rd of 5 parts Journal)
- SP=Start Page | map to dc.source (4th of 5 parts Journal)
- OP=Other Pages | map to dc.source (4th part of 5 parts Book)
- K1=Keyword | map to dc.subject
- AB=Abstract | map to dc.description (1st part of 2)
- NO=Notes
- A2=Secondary Authors | map to dc.contributor (1st part of 4)
- T2=Secondary Title
- ED=Edition | map to dc.source (3rd part of 5 parts Book)
- PB=Publisher | map to dc.source (1st part of 5 parts Book)
- PP=Place of Publication | map to dc.source (2nd part of 5 parts Book)
- A3=Tertiary Authors | map to dc.contributor (2nd part of 4 parts)
- A4=Quaternary Authors | map to dc.contributor (3rd part of 4parts)
- A5=Quinary Authors | map to dc.contributor (4th part of 4 parts)
- T3=Tertiary Title
- SN=ISSN/ISBN | map to dc.identifier (2nd part opf 2)
- AV=Availability
- AD=Author Address
- AN=Accession Number
- LA=Language | map to dc.language
- CL=Classification
- SF=Subfile/Database
- OT=Original Foreign Title
- LK=Links
- DO=Document Object Index
- CN=Call Number
- DB=Database
- DS=Data Source
- IP=Identifying Phrase
- RD=Retrieved Date
- ST=Shortened Title
- U1=User 1
- U2=User 2
- U3=User 3
- U4=User 4
- U5=User 5
- UL=URL | map to dc.source (5th part of 5 parts Book or dc.source (5th part of 5 parts Journal)
- SL=Sponsoring Library
- LL=Sponsoring Library Location
- CR=Cited References | map to dc.description (2nd part of 2)
- WT=Website Title
- A6=Website Editor
- WV=Website Version
- WP=Date of Electronic Publication
- Printer-friendly version
- Login or register to post comments
Fedora Policies
Collection Policies and Content modules for mapping XML schema's to Dublin core.Defenition to be expanded.......
- Printer-friendly version
- Login or register to post comments
2008-01-09 VRE
ToDo's
- Explore Project Managment modules(DK)
- Send email for FedoraAdmin to Dave/Mark/Lise with instructions.(PL)
- Hook Paul up with Richard Green/Rob Casson(Solarpac) (PP) followup
- Look at FEDORA 3.x (PP)
- Explore 64 bit to increase beyond 2GB limit on SLES(GJ/PP)
- Contact Ray Dorion re basics(GJ) - done
- Create ACCBR(PL) - done
- Discuss Modules to include in new VRE's.....
- Roll out basics and turn on some intermediates/advanced as needs and skills develop.(CM, GJ)
- explore standards and consistancy re modules(local/global), paths, admin info(CM, GJ)
- User group meeting vre usability issues. (CM, GJ)
- Setup Organic Group Forums for Natasha
- Look at the Menuing standards MHL
- Contact re any issues
- Install the Fedora Collections Module and link
- Add edit Metadata button Living Archives
- Bills module might replace the existing FEDORA collections module
Library WebPage
- Use UPEI "Theme" in vre.upei.ca/library, vre.upei.ca/cindy Island Studies
- Peter meeting with Godfrey LMMI
- Shopping Cart for lmmontgomery about to be started.
- Drupal Module called ubercart(drupal 5.5)
- Pieces in Place
- One Page on Site
Critter
- Stacy Kerr and Russ's Lab
Usability issues?
- Dave Kisley
- incorporate the Drupal taxonomy in a granular fashion without being overwhelming is a subset only is needed
- Ajaxie client failed
- View's defined / Lab for subset's of taxonomy
- issue is how to import the terms into the global drupal structure using spreadsheet
- Put taxonomy database on hold.(DK, PP, PL to meet)
VRE Review Client Review
- CMTC - Links, Admin
- Ingest up and ready to go
- Some of the "fields" migt be changed. FEDORA/Drupal
- Getting closer to the user model security
- DC, QDC Label edit issue
- when we "Edit" the QDC dc.title changes the FOXML Label.
- Since this is the "Label" in the browse it was important to mirror.
- Lucene Search
- Lucene now indexes only the latest version
- Repository in a Box
Refworks exported as XML -Faculty Publications Database
- Build an interface for one or two high profile researchers from departments
- Provide an "Add Data Stream" button to add a datastream to existing Metadata.
- PEIDB next Inges
- Clean up the "customizable" to default collection policy
- Disseminators Stored in Collection objects as a Collection policy datastream
- Need to create a unique collection when added to Drupal:
- New user created associated with default collection policy
- Group created
- VRE created
- Requested "Collections"
- Admin control over association special/requested collection policies o User/Group/VRE/Requested
- Printer-friendly version
- Login or register to post comments
FEDORA Days Notes
RAMP
MAMS – over
authentication, authorization, Search services, metadata management
RAMP
DRAMA
Search accross institutional protected repositories.
Federated Access vs Federated Repository
Access inter-institutionally
AUTHENTICATION
SAML – re:Shibboleth
pseudonymuos
Browser Post Profile
Liberty Alliance
User -> Federation(Where are you) -> IdM(Who are you) -> sends to content provider with credentials.
Inter/intra institutional shibboleth single/signon
Can't “shibbolize” ann GUI's talking to FEDORA.
How do you do it.....?
DAR + ASM
ASM controlls the “Shibboleth” process and creates an LDAP user if trusted. That Fedora can then use to authenticate.
DAR can go on top of FEDORA without additional code changes.
Sweet!
AUTHORIZATION
XACML
Attribute being sent by shibboleth to Fedora - how to make use of that for access control.
Policied in XML external to application
Policies apply accross disparate hetero. Apps
changing req. NO code changes.
Policy Sets/Obligations
***Complex software – Important to develop a tool to help manage this***
Policy consistancy and verification
Finder policy's need to be built for each condition.
Creator vs institutional vs public
Sun reference implamantation is somewhat mature on sorgeforce
XACML 2 Hierarchical resource profile needed for FEDORA – needs to be build.....
Well defined vocab for repositories is required for future access control flexibility.
Minimize policies for each collection.
Use a default access policy and apply the “exceptions”.
Why not use the FEDORA implementation?
XACML – 2.1.1
policy creation, edit, delete all needed to be done by hand. - yuck
Cannot set a uniform access control at the collection
Can't view what “current” access level to an object.
Unintended side effects when policy changes.
Authourization Interceptor
“Patterns” are pluggable.
AXIS handlers for web services
REST - servletfilters
melcoe-pdp
Policies at a collection “level” and applicable to all “sub-collections” and objects related to it.
Hierarchical policy combo – closest applies.
Who is the “parent object”
Developed a front end for FEDORA to demonstrate the above.
Muradora using spring and Struts 2(webworks).
Using MODS authoratative datastram (MARCXML transformed into MODS)
Lets User effect the level of access.
Every object can be queried by the database.
A change to an object is a new object.
Access control at repository level, user defined group level, object level or datastream level.
Two accesses – Publisher version need protection while preprint access OK.
Www.ramp.org.au
http://drama.ramp.org.au
http://mura.ramp.org.au
Marks Presentation – UPEI and Fedora
Links – Hull, QC, repoman project
Integrate
Drupal/Moodle/GroupWise/Office Products
Federated Finding tools
Library people ned the ability to play with technolgy
Building Capacity to provide support to
Administrative Landscape
Learning Landscape
FEDORA as eReserves through Moodle
Research Landscape
Data generated via the research process
Steward shor and longterm storage
Seamless
High Level
1 DRS
Security
Granular access rights/roles
Island Partners
About Islandora
UPEI Robertson Library

Islandora Project Receives Major Grant Funding
Islandora VirtualBox Demo ver 1.0 Instructions Available
Islandora is an open source framework under development at the Robertson Library at the University of Prince Edward Island. Islandora combines the Drupal and Fedora software applications to create a robust digital asset management system that can be used for any requirement where collaboration and digital data stewardship, for the short and long term, are critical. Additional open source applications are added to the stack to create what we call Solution Packs or Sprouts.
We are creating a number of initiatives under the umbrella of the Islandora project, all developed using the innovative Islandora software suite, including:
- VRE (Virtual Research Environment) - custom collections of data models and applications providing best-practice stewardship of research data. The VRE Sprouts are developed through collaboration with a number of researchers at UPEI and elsewhere and will be released on this site starting in Q2 2010. Initial VRE Sprouts will include Life Sciences, Epidemiology, Virtual Microscopy and Lab Management. More information about our VRE's is available from the links on this site.
- IslandArchives.ca - an exemplar set of digital collections created by UPEI and our partners, providing access to a wide range of digital documents and materials. The Sprouts released in 2010 will include Books, Magazines and Newspapers, Maps, Video/Audio.
- Repository-In-A-Box - a unique solution for building Institutional Repositories and as seen with UPEI's own IslandScholar site. A new version of the IR Sprout will be available in February 2010.
There are also an increasing number of institutions using Islandora for their own repository systems. If you are using Islandora we would like to add your name to our list of collaborators: contact Mark at the co-ordinates below with information about your project.
For more information about Islandora, explore our site, request an account via the Login button above, or by sending an e-mail to Mark Leggott (mleggott@upei.ca).
![]() |
![]() |
- Printer-friendly version
- Login or register to post comments
Component Documentation
The Lab Tools section of the VRE contains specialized tools and applications that meet the needs of specific research groups. The VRE Team will work with you to add the Lab Tools components.
This Development VRE site provides most of its documentation here, including those related to the implementation of Fedora and Drupal.
You must have an account and be logged in to view this section.
| Attachment | Size |
|---|---|
| Islandora+Guide.doc | 139 KB |
- Printer-friendly version
- Login or register to post comments


