Baseball Bloggers Alliance Shared Photo Repository
System Specification
Version 0.1 DRAFT
Please note that this document has not been approved by the Baseball Bloggers Alliance and is not to be considered contractual guidance. Terminology and specifications in this document are purely notional and do not necessarily represent what will be present in the finished product if such a product is developed.
1.0 Purpose
The Baseball Bloggers Alliance (BBA) Shared Photo Repository (BSPR) is a tool to enable the sharing of photographic content between BBA member blogs. This functionality may exist as a replacement for paid photography services or as a supplemental service alongside one or more paid services. Use of BSPR content by BBA member blogs is to be permitted without payment; as such, the system will not host any content that requires a royalty in exchange for use.
2.0 Background
One of the key elements of any web-based content delivery service is graphical content, typically in the form of photographs, drawings, or video/animation. For sports blogs, photographs of baseball players, fields, and related items are common to the point of being practically required for success. Major sports sites utilize professional photography services that provide access to extensive repositories of baseball photographs. These repositories include photographs of most players from both recent games and historical archives. The BBA, as an informal coalition of member sites, does not charge for membership and does not currently have an operating budget. Unless funds are raised for such a purpose, the BBA will be unable to procure access to a professional sports photography service. As an alternative, the BBA is investigating the feasibility of developing a system to make photographs from member blogs available to the other member blogs with a royalty-free limited-use license.
3.0 System Capabilities
Minimum functionality of the BSPR includes the capabilities specified below.
3.1 Hosting Platform
The BSPR shall be hosted on a publicly-accessible server. The BSPR interface shall include a public section hosting informational content (description, tutorials, etc.) and the guest component of the Photograph Commentary Function. The BSPR interface shall include a private section with access controlled by the User Authentication Function and hosting the Photograph Database, Database Administration Function, Photograph Upload Function, Photograph Retrieval Function, and the user component of the Photograph Commentary Function. The BSPR Hosting Platform shall be able to support, either at launch or through a specified upgrade path, a minimum of 1 Terabyte of data and 100,000 individual files.
3.2 Photograph Database
The BSPR shall include a database of all photographs that have been submitted for inclusion. This database shall be hosted on the Hosting Platform with access limited based on user authentication provided through the User Authentication Function. Each record in the database shall be capable of storing the data specified below. Data elements marked as Required shall be ensured to be present in all records. Records shall be capable of storing multiple instances of data elements marked as having the option of multiples.
Data Element: Link to Photograph
Data Type: Hyperlink
Required Element: Yes
Multiple Instances: No
Data Source: System Generated
Data Element: Photograph Subject
Data Type: Text (40 characters)
Required Element: Yes
Multiple Instances: Yes
Data Source: User Upload
Data Element: Detailed Description
Data Type: Text (400 characters)
Required Element: No
Multiple Instances: No
Data Source: User Upload
Data Element: Team
Data Type: Text (40 characters)
Required Element: No
Multiple Instances: Yes
Data Source: User Upload
Data Element: Location
Data Type: Text (60 characters)
Required Element: No
Multiple Instances: No
Data Source: User Upload
Data Element: Year
Data Type: Number (0-9999)
Required Element: No
Multiple Instances: No
Data Source: User Upload
Data Element: Month
Data Type: Number (1-12)
Required Element: No
Multiple Instances: No
Data Source: User Upload
Data Element: Day
Data Type: Number (1-31)
Required Element: No
Multiple Instances: No
Data Source: User Upload
Data Element: Uploader
Data Type: User ID (determined by details of the User Authentication Function)
Required Element: Yes
Multiple Instances: No
Data Source: System Generated
Data Element: Copyright Holder
Data Type: Text (40 characters)
Required Element: Yes
Multiple Instances: No
Data Source: User Upload
Data Element: Visible
Data Type: Binary (1 bit)
Required Element: Yes
Multiple Instances: No
Data Source: System Generated
3.3 User Authentication Function
The BSPR shall include a method for user authentication that determines the level of access that each registered user is granted. The User Authentication Function shall include at a minimum access levels of Guest, User, and Administrator. Administrators shall have the ability to create/approve/delete User accounts, grant/revoke Administrator privileges, and perform other functions as described elsewhere in this document. A default Administrator account that cannot be deleted or lose Administrator privileges shall be present when the BSPR is created. All user accounts shall include a user name, an email address, and a password. Users shall have the ability to change their own password. Administrators shall have the ability to reset user passwords.
3.4 Database Administration Function
The BSPR shall include a method for users with Administrator access to maintain and modify the Photograph Database. Administrators shall have the ability to manually edit any data field in a database record including data fields that are set by users at the time of upload and data fields that are initially generated by the system at the time of upload. Administrators shall have the ability to delete any data fields in a record that are not marked as required; only one instance of a required data element is necessary to satisfy the required status, additional instances can be deleted without violating this requirement. Administrators shall have the ability to set whether photographs are visible in the database by default (the default state of the Visible data element). Administrators shall have the ability to select the email address(es) that comments from the Photograph Commentary Function are sent to.
3.5 Photograph Upload Function
The BSPR shall include a method for registered users to upload photographs into the BSPR and document them for the Photograph Database. The upload function shall include the ability for the user to enter all of the information marked as User Upload and select a photograph from local storage to upload. The upload function shall generate a unique data path within the BSPR to be used as the storage location and hyperlink for the uploaded photograph. The upload function shall fill the User ID in the database record for the uploaded photograph with the ID of the user uploading the photograph. The upload function shall set the Visible data element in accordance with the default visibility setting in the Administration Function. The upload shall only be allowed if all required user-provided data elements contain valid data and a checkbox next to the following license agreement is checked.
License Agreement
By checking this box, I hereby certify that I have the authority to grant a license for the use of the photograph being uploaded and that I agree to allow the free use of this photograph with proper attribution by any BBA member blog in good standing at the time of this photograph’s use. I understand that blogs using this photograph may at some point in the future cease to be BBA members and agree to allow continued use of this photograph in any article published while the blog was a BBA member in good standing. I agree to accept any and all responsibility for this photograph’s inclusion in the BBA Shared Photo Repository and accept all liability in the event of a copyright infringement claim. I understand that if I cease to be a member in the BBA, any photographs I upload to the BSPR will remain available to the BBA membership.
3.6 Photograph Retrieval Function
The BSPR shall include a method for registered users to search the Photograph Database for specific content. This search function shall include the ability to search by any combination of the data fields that can be entered by users at photograph upload. The matches returned from a search event shall be displayed in a list broken up into multiple pages with a user-selectable page size including options of, at a minimum, 10, 25, 50, and 100 records. Only records set in the Photograph Database as visible shall be displayed in search results. Search results shall display all data elements except Visibility plus a link to a form for the user-side Photograph Commentary Function.
3.7 Photograph Commentary Function
The BSPR shall include a method for registered users or guests to submit comments about photographs in the BSPR. Guest commentary shall be provided via a generic form accessible from the publicly-accessible BSPR interface. User commentary shall be provided via a form accessible from search results in the Photograph Retrieval Function with photograph information filled in automatically. Both types of form shall allow one of the following reasons to be selected: Copyright Violation, Inappropriate Content, Corrupt Photograph, Inaccurate Description, Other. Both types of form shall allow a detailed comment to be entered. When submitted, comments shall be sent to the email address(es) set in the Database Administration Function and stored in the BSPR in an area accessible to Administrators.
Leave a Comment