prism_specification

 

 

 

PRISM:

Publishing Requirements for Industry Standard Metadata

 

 

DRAFT Version 3.1

 

 

Guide to
PRISM Rights Summary Metadata

 

 

December 15, 2014

 

 

 

idealliancelogo_cymk


Copyright and Legal Notices

© 2001 – 2014 International Digital Enterprise Alliance, Inc.  All Rights Reserved.

PRISM® and nextPub® are registered trademarks of the International Digital Enterprise Alliance, Inc. (IDEAlliance).

This document may be downloaded and copied provided that the above copyright notice and this Notice are included on all such copies.  This document itself may not be modified in any way, except as needed for the purpose of developing International Digital Enterprise Alliance, Inc. (“IDEAlliance”) specifications.  Use of the specification or standard set forth in this document shall not create for the user any rights in or to such specification or standard or this document, which rights are exclusively reserved to IDEAlliance or its licensors or contributors.

Use of this document and any specification or standard contained herein is voluntary.  By making use of this document or any specification or standard contained herein, the user assumes all risks and waives all claims against IDEAlliance, its licensors and contributors.  By making this document available, IDEAlliance is not providing any professional services or advice to any person or entity.  Any person or entity utilizing this document or any specification or standard contained herein should rely upon the advice of a competent professional before using any such information.

NO WARRANTY, EXPRESSED OR IMPLIED, IS MADE REGARDING THE ACCURACY, ADEQUACY, COMPLETENESS, LEGALITY, RELIABILITY OR USEFULNESS OF ANY INFORMATION CONTAINED IN THIS DOCUMENT OR IN ANY SPECIFICATION OR STANDARD OR OTHER PRODUCT MADE AVAILABLE BY IDEALLIANCE. THIS DOCUMENT AND THE INFORMATION CONTAINED HEREIN AND INCLUDED IN ANY SPECIFICATION OR STANDARD OR OTHER PRODUCT OR SERVICE OF IDEALLIANCE IS PROVIDED ON AN "AS IS" BASIS. IDEALLIANCE DISCLAIMS ALL WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, ANY ACTUAL OR ASSERTED WARRANTY OF NON-INFRINGEMENT OF PROPRIETARY RIGHTS, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.

IN NO EVENT SHALL IDEALLIANCE, ITS LICENSEES, CONTRIBUTORS OR THEIR RESPECTIVE OFFICERS, DIRECTORS, EMPLOYEES, AGENTS, REPRESENTATIVES, SUPPLIERS OR CONTENT OR SERVICE PROVIDERS BE LIABLE FOR DAMAGES OF ANY KIND, INCLUDING WITHOUT LIMITATION, DIRECT, INDIRECT, COMPENSATORY, SPECIAL, INCIDENTAL, PUNITIVE OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION DAMAGES FROM DATA LOSS OR BUSINESS INTERRUPTION) EVEN IF MADE AWARE OF THE POSSIBILITY OF SUCH DAMAGES, WHETHER IN AN ACTION UNDER CONTRACT, TORT OR ANY OTHER THEORY, ARISING OUT OF OR IN CONNECTION WITH THE USE, INABILITY TO USE OR PERFORMANCE OF THIS DOCUMENT, THE SPECIFICATION OR STANDARD CONTAINED HEREIN, OR ANY OTHER DOCUMENT OR SPECIFICATION OR STANDARD MADE AVAILABLE BY IDEALLIANCE. 

Some states do not allow the disclaimer or limitation of damages, so the disclaimers set forth above apply to the maximum extent permitted under applicable law.

IDEAlliance takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed or implicated with respect to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available.  IDEAlliance does not represent that it has made any effort to identify any such rights. Information on IDEAlliance's procedures with respect to rights in IDEAlliance specifications can be found at the IDEAlliance website at www.idealliance.org.  Copies of third-party claims of rights, assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification, can be obtained from the President of IDEAlliance at patent-disclosure@idealliance.org.

IDEAlliance requests interested parties to disclose any copyrights, trademarks, service marks, patents, patent applications, or other proprietary or intellectual property rights which may cover technology that may be required to implement this specification. Please address the information to the President of IDEAlliance at patent-disclosure@idealliance.org.


Table of Contents

1     Status  1

1.1         Document Status. 1

1.2         Document Location. 1

1.3         Version History. 1

2     PRISM Rights Summary Metadata Guide Structure. 3

3     Introduction. 5

3.1         About the Original PRISM Usage Rights Specifications. 5

3.2         The Use Case for Rights Summary Metadata. 5

3.3         The PRISM Rights Summary Metadata Namespace. 6

3.4         Where PRISM Rights Summary Metadata Fits. 6

3.5         About the PRISM Rights Summary XML Model 6

3.6         Advantages of Using the PRISM Rights Summary XML Model 7

3.7         Legend for Diagrams. 7

4     PRISM Rights Summary Expression XML Model 9

4.1         PRISM Rights Summary Metadata Fields. 9

4.2         Asset Link and Agreement Link. 9

4.3         General Information. 10

4.4         Party Information. 10

4.5         Permissions Block. 10

4.6         Restrictions Block. 11

4.7         ODRL Elements. 11

4.7.1      Action. 11

4.7.2      Constraint 11

4.7.3      Duty. 12

4.7.4      Party Links. 12

5     PRISM Rights Summary Metadata Elements. 13

5.1         Elements in Alphabetical Order 13

5.2         PRISM Rights Summary Element Glossary. 13

Appendix A    PRISM Rights Summary Model XSD.. 15

Appendix B    Rights Summary Tagging Example. 25


1      Status

1.1      Document Status

The status of this document is:

ü

Draft

10/30/2014

ü

Released for Public Comment

12/15/2014

 

Final Specification

 

1.2       Document Location

The location of this document is:

http://www.prismstandard.org/specifications/3.1/Draft_Rights_Guide_3.1.pdf

 

1.3      Version History

Version Number

Release Date

Editor

Description

Draft 3.1 A

October 30, 2014

Kennedy

First Draft New Rights Guide

Draft 3.1 B

12/15/2014

Kennedy

Second Draft

 

 

 

 


2      PRISM Rights Summary Metadata Guide Structure

This PRISM Rights Summary Metadata Guide was written to provide a guide to the expression of PRISM Rights Summary Metadata. This guide will supplementary to the PRISM3.1 Specification. The Specification is the authoritative source for all issues of concern.

The PRISM Usage Rights Guideis made up of:

1. PRISM Rights Summary Guide Structure:  A guide to the structure of the document

2. Introduction:  A brief overview of the PRISM Usage RightsXML Schema and how this schema links to PRISM Usage Rights XML and PRISM Source Vocabulary for Asset Management.

3. XML Rights Summary Expression: An overview of an XML structured rights summary expression for PRISM Profile 1

4. PRISM Rights Summary Metadata Elements

4.1 Elements in Alphabetical Order: A listing of all elements in the PRISM Usage RightsMetadata fields in an XML Format in alphabetical order.

4.3 Element Glossary: A list of all elements in the PRISM Rights Summary Metadata XML elements with their definition.

Two Appendices are also included in the PRISM Rights Summary Metadata Elements Guide. These include:

Appendix A: PRISM Rights Summary Model XSD

Appendix B: Sample Instance of Rights Summary XML Tagging

 


3      Introduction

The PRISM Rights Summary XML format is a standardized XML schema structure for publishers to use to summarize usage rights for an asset as specified within the governing contract document(s).

3.1      About the Original PRISM Usage Rights Specifications

Work began on the original version of PRISM Usage Rights Metadata in 2004.  At that time the assumption was that content and assets would be published in print or on the web in domestic (US Only) editions.  An initial set of usage rights metadata was developed for this very simple use case.

At the time of authoring this Guide, publishing has undergone a radical transformation.  Publishing across a wide number of media platforms is the norm, as is publishing both domestically and on a global scale.  In addition, publishers have realized that the red-light/green-light function originally flagged by the <reuseProhibited> flag is much more complex than was ever anticipated.  A major new version of PRISM Usage Rights Metadata was clearly called for.  That “new” version of PUR is documented in this Guide.  The new version of PRISM Usage Rights Metadata will be known as PRS, or PRISM Rights Summary.

3.2      The Use Case for Rights Summary Metadata

The PRISM Usage Rights Metadata schema was developed with a very specific use case in mind:

Title

Develop Metadata for Summarizing Usage Rights for an Asset or group of Assets

Summary:

Publishers have a requirement to track complex usage permissions/restrictions for a content/media asset or group of assets.

Scope:

This use case strictly addresses summarizing and documenting usage rights for an asset.  It is the intent that the rights summary can be linked back to governing contracts and agreements and can be linked forward to assets managed in a DAM. 

Automating the red-light/green-light right-to-use decision is out-of-scope.  However providing metadata that will enable such automation is clearly in the scope of this effort.

Actors:

Legal, permissions staff / paralegal staff and or IT and editorial/production staff

Prerequisites:

1.      Have access to contracts governing usage for content/media assets

2.      Conform to the standard publishing industry vocabulary (terms/definitions) that is used to construct ODRL usage policies.

3.      Conform to the existing PRISM Usage Rights Metadata elements, making extensions where required.

Scenario:

  1. Each contract or agreement pertaining to usage of content/assets will have a unique identifier that can be linked to a PRISM Rights Summary.
  2. The permission/restriction rights defined in each contract will be summarized using PRISM Rights Summary metadata.
  3. One or more ODRL usage policies can be constructed using the PRISM Rights Summary metadata so that the right-to-use decision can be computer processable and can be automated.
  4. Each asset being used for publication will have been assigned a unique identifier that can be linked to a PRISM Rights Summary.

Requirements

  1. Rights summary metadata for a content/media asset must  include:

a.      A unique identifier for this rights summary

b.      A link to the unique identifier for the asset(s) to which this summary applies

c.      A link to the unique identifier for the agreement(s) from which this summary was constructed

  1. Rights summary metadata for a content/media asset may include:
    1. General rights information
    2. Information about any Parties referenced by usage rights policies
    3. Information about Permissions to be granted by usage rights policies
    4. Information about Restrictions to be enforced by usage rights policies

3.3      The PRISM Rights Summary Metadata Namespace

As with all PRISM Specifications, the fields for Rights Summary were developed in a separate namespace.  This model enables users to select which ever PRISM modules are required to meet their unique business needs.  To make a clear distinction between this Rights Summary metadata and the legacy PRISM Usage Rights metadata, this new metadata summary has been given a separate namespace.

The namespace for PRISM Rights Summary Metadata is prs:  This namespace will be added to PRISM as of the publication of PRISM V3.1.

xmlns:prs="http://prismstandard.org/namespaces/prs/3.1"

3.4      Where PRISM Rights Summary Metadata Fits

PRISM Rights Summary Metadata is one of 3 distinct, yet interrelated, metadata sets that enable the construction of a comprehensive rights management solution.  Links must be made between these 3 domains.  See Figure 3.1.

Figure 3.1 Metadata domains required to support comprehensive Rights Management

3.5      About the PRISM Rights Summary XML Model

The standard PRISM Rights Summary Metadata fields and their values are documented in the PRISM Rights Summary Metadata Specification [PRSMS]  In addition to developing a series of standard metadata fields to capture and describe usage rights for an asset, the PRISM Working Group has developed a standardized XML model.  This model captures the relationship between the fields that make up PRISM Rights Summary Metadata and is documented in this Guide. 

3.6      Advantages of Using the PRISM Rights Summary XML Model

This expression of the PRISM Rights Summary Metadata elements is a standardized XML model for PRISM Profile 1.  Adapting your processes to conform to the PRISM Rights Summary XML Format will provide many advantages and financial benefits to you and your business partners.

·        The use of a single format for all organizations using XML for rights summary description will speed the processing of usage rights expressed in a contract and fosters easy integration with tools and partners within a rights management workflow.

·        The use of a common industry XML model reduces the barrier to entry for all publishers and content aggregators wishing to shift toward the integration of their DAM with rights management and contract management systems.

·        The PRISM Rights Summary XML model helps everyone in the electronic content business to track, access and use rights information contained within asset-related contracts.

·        The PRISM Rights Summary XML model provides an excellent starting point for those implementing a comprehensive digital rights management system.

·        The PRISM Rights Summary XML model provides an excellent starting point for those who wish to automate the red-light/green-light right-to-use decision using ODRL.

These advantages will enable you use your content/assets on a wider variety of output media and products, getting more value from your information assets.

3.7      Legend for Diagrams

In this guide, the XML model is often illustrated by a model diagram.  Each diagram was produced with the Altova XML Spy product.  These diagrams show the elements and attributes that make up a model and their order and frequency.

The legend for reading XML model diagrams is shown in Figure 1.1.  Elements that are required by the model are shown in a solid box.  Elements that are optional are shown in a dotted box.  Likewise attributes may be required (solid box) or optional (dotted box).  A repeatable occurrence of elements is indicated by numbers below each element box to the right. 

The diagrams also indicate how elements are assembled. When building some models, elements may occur in a sequence with a specified order.  Other models provide a choice from among a number of elements.  The legend in Figure 3.2 shows the connectors for sequence and choice.

Figure 3.2 Legend for XML Diagrams


4      PRISM Rights Summary Expression XML Model

In order to provide an easy to implement XML model for PRISM Rights Summaries, an XML schema has been constructed to standardize the order and frequency of PRISM Rights Summary elements. Benefits of a standardized, structured model are discussed in Section 3 of this document.

NOTE:  The PRISM Rights Summary model is designed to be implemented in an international environment.  To facilitate multilingual deployment, all text / string fields employ the W3C xml:lang attribute so a language can be specified.

4.1      PRISM Rights Summary Metadata Fields

The PRISM Rights Summary Container was constructed to serve as a virtual container within which all rights elements can be organized by sequence and frequency. The organization is designed to streamline linking with contract management and asset management systems.  The organization of the model is also designed to flow seamlessly into the construction of ODRL usage policy statements.  See Figure 4.1.

Figure 4.1 Rights Summary Container Structure

A virtual grouping of rights elements that are required are pictured with a solid outline, such as <assetLink and <agreementLink.  Optional element groups are pictured with a dashed outline.

Note:  A unique identifier is required for each Rights Summary.  This unique identifier is tagged using the standard Dublin Core identifier (dc:identifier).

4.2      Asset Link and Agreement Link

These elements provide the required linkages to one or more assets stored in a DAM by referencing the asset identifier or to contracts stored in a contract management system.  Because each Rights Summary may apply to more than one asset, one or more asset links are allowed.  Because every content/media asset may have multiple agreements, one or more agreement links are allowed.  See Figure 4.2.

Figure 4.2 Asset Link and Agreement Link Structures

4.3      General Information

This structure allows for the inclusion legacy PRISM Usage Rights metadata fields.  While these fields may be useful, they are not used directly for the construction of XML ODRL policy rules.  See Figure 4.3.

Figure 4.3 General Rights Information

4.4      Party Information

The Party Information structure in the XML model provides for the inclusion of parties enumerated in a contract or agreement relating to content or media assets.  These parties typically are used to construct ODRL usage policies in XML.  The “function” maps directly into ODRL duties that are required in order for usage to be granted.  The functions come from the PRISM ODRL Community Vocabulary, a controlled vocabulary.  Examples of functions include attributed party, informed party and payee party.  The party identifier provides a link to a contacts database.  The Party model is a choice between a link to a party ID in a contacts database or full information about the party.  See Figure 4.4.

Figure 4.4 Party Information Structure.

Note:  The id= attribute on the <dc:identifier element is used to clarify the use of the <dc:identifier.  In this case the value for the id should be set to the value “partyID”.

4.5      Permissions Block

The permissions block is made up of one or more permissions metadata sets.  Each set has the information to construct an ODRL usage policy statement.  Permissions are precisely defined in terms of actions that the publisher may take with the content or media asset they have acquired.  The permission to use may be qualified by constraints.  And duties such as a fee for use or giving credit may be added in the contract as terms required for granting usage rights.  See Figure 4.5.

Figure 4.5 Permissions Structure

4.6      Restrictions Block

The restrictions block is made up of one or more prohibition metadata sets.  Each set has the information to construct an ODRL usage policy statement.  Prohibitions are precisely defined in terms of actions that the publisher may NOT take with the content or media asset they have acquired.  The prohibition to use content or media assets may be qualified by constraints.  See Figure 4.6.

Figure 4.6 Restrictions Structure

4.7      ODRL Elements

Both the PRS Permissions and Restrictions block are constructed of elements that are designed to map directly into ODRL Policy statements.  These elements include <action, <constraint and <duty and the link to parties.

4.7.1    Action

An action is a particular use of a content or media asset as specified in an ODRL policy.  An action may either be specified as permission or as a restriction.  See Figure 4.5 and 4.6.  The specific actions included in the PRISM Rights Summary are defined in the PRISM Action Controlled Vocabulary.  The PRISM Controlled Vocabulary defines actions as a hierarchy using PRISM Controlled Vocabulary Markup Specification [PRISMCVMS].

4.7.2    Constraint

A constraint is a limitation on a PRISM Rights Summary permission or restriction.  See Figure 4.5 and 4.6.  The constraint model was designed to map directly into an ODRL Policy Statement.  See Figure 4.7.

Figure 4.7 Constraint Model

The <constraint element is used to express constraints as attribute values.  The constraintName= attribute is required to specify the type of constraint being specified.  Examples include:

·        embargoDate

·        deliveryPlatform

·        distributionChannel

·        adultContentWarning

·        adultContentAge

·        countryCode

·        language

·        inIssue

The constraintOperator attribute allows the specification of the acceptable scope of the constraint value.  Examples include:

·        eq (equals)

·        lt (less than)

·        gt (greater than)

The rightOperand= attribute specifies the terms of the constraint that is used to evaluate the supplied constraint value.  And the datatype= attribute notifies an ODRL policy evaluation engine of the datatype of both the constraint value and the rightOperand.

<constraint constraintName=”embargoDate” constraintOperator=”gteq” rightOperand=”11182014” datatype=”xs:date” />

4.7.3    Duty

The <duty element is used to express a duty that must be performed as a contract term for the use of content or media by a publisher.  See Figure 4.5.  The <duty element accepts the enumerated values:

·        credit

·        compensate

·        inform

·        requestConsent

·        include

4.7.4    Party Links

Some duties require interaction with a party.  See Figure 4.5. For example if the duty requires a credit be given for the use of the asset, a link to the party to be credited.  Figure 4.8 illustrates the partyLink element model.

 


5      PRISM Rights Summary Metadata Elements

5.1      Elements in Alphabetical Order

The following is an alphabetical list of the PRISM Rights Summary metadata that are documented in the PRISM Rights Summary Metadata Specification [PRSMS].


·       prs:action

·       prs:agreementLink

·       prs:assetLink

·       prs:constraint

·       pur:copyright

·       prs:duty

·       prs:generalInfo

·       dc:identifier

·       prs:party

·       prs:partyAddress

·       prs:partyEmail

·       prs:partyInfo

·       prs:partyLink

·       prs:partyName

·       prs:partyPhone

·       prs:permission

·       prs:permissions

·       prs:prohibition

·       prs:restrictions

·       pur:rightsAgent

·       pur:rightsOwner

·        prs:rightsSummary


5.2      PRISM Rights Summary Element Glossary

The following is glossary of definitions for the PRISM Rights Summary metadata elements in the prs: namespace.

prs:action:  An action defines the exact permitted or prohibited usage of an asset.  This element will contain enumerated values from the PRISM Community Rights Vocabulary (CV).  Examples of actions include use = any reasonable use of the asset; presentDisplay = to display on a screen; presentPlay = to play an asset such as an audio asset; presentPrint = to print; presentTextToSpeech = to present text as speech; aggregate = to aggregate with other assets; translate = to translate to another language; transform = to output in an alternate format.

prs:agreementLink:  A link to an agreement or contracts governing the use of a content/media asset being described by this Rights Summary.

prs:assetLink:  A link to the content/media asset(s) being described by this Rights Summary.

prs:constraint: A constraint places limits on the permission/restriction action.  Examples include embargoDate, exclusivity, exclusivityEndDate, option, optionEndDate, expirationDate, deliveryPlatform, distributionChannel, countryCode, inContext, inTitle, inBrand,  language, absolute size (replaces image size restriction) absolute position, relative size, relative position, resolution and adultContentWarning.

pur:copyright: The copyright statement for the resource.

prs:duty: A duty is an action that a publisher must take in order to have permission to use the asset.  Values include credit (replaces creditLine, compensate (replaces usageFee), inform and include(such as the text of the credit line, an image of the author, etc.)

prs:generalInfo: This is a virtual organizing structure to contain legacy PUR metadata that does not map into ODRL right-to-use decision policies.

dc:identifier: A unique identifier for the Rights Summary.

prs:party: A field identifying a party associated with a permissions/restriction duty.   This field has a function= attribute with enumerated values such as attributedParty, informedParty, consentingParty, payeeParty and trackingParty from the PRISM party function controlled vocabulary.  Party values will map into ODRL to drive the right-to-use decision policies. This model does what we attempted to imply with the rightsOwner/rightsAgent fields.

prs:partyAddress: The street address of a party.

prs:partyEmail: The email address of a party.

prs:partyInfo:  The Party Information element is a virtual organizing structure for the 2014 version PRISM Rights metadata.  This structure has been designed to map directly into the construction of ODRL usage policies.

prs:partyLink: This field links a party in a contracts or contacts database.

prs:partyName: The name of a party.

prs:partyPhone: The telephone number of a party.

prs:permission: A permission statement indicating the action permitted, constraints that must be applied along with any duties that must be performed by an associated party. Metadata fields in this model will map into ODRL to drive the right-to-use decision policies. This model replaces the pur:permissions that is simply a text string that indicates permissions granted by a contract or agreement.

prs:permissions: Permissions is a virtual organizing structure for the 2014 version PRISM Rights metadata that is made up of one or more permission elements.

prs:prohibition: A prohibition is made up of metadata fields (actions and constraints) that map into ODRL to drive the right-to-use decision policies.

prs:restrictions: Permissions is a virtual organizing structure for the 2014 version PRISM Rights metadata.   This model replaces the pur:restrictions model that was simply a text string to document restrictions on use.  Each prohibition metadata field that makes up restrictions will map into ODRL to drive the right-to-use decision policies.

prs:rightsAgent: The Rights Agent provides contact information for the person or organization that has the legal right to license the use of a resource  In the PRISM Rights Summary this has been replaced by Party to facilitate mapping directly into the construction of ODRL usage policies.  The model for the prs: Rights Agent therefore differs from the pur: model.

prs:rightsOwner: The Rights Owner provides contact information for the person or organization that legaly owns an asset. In the PRISM Rights Summary this has been replaced by Party to facilitate mapping directly into the construction of ODRL usage policies. .  The model for the prs: Rights Owner therefore differs from the pur: model.

prs:rightsSummary: The Rights Summary element is a virtual organizing structure for the 2014 version PRISM Rights Summary Metadata.  This structure has been designed to map directly into the construction of ODRL usage policies.


Appendix A PRISM Rights Summary Model XSD

The PRISM Working Group has developed a standardized XML model for Rights Summary Metadata.  This model captures the relationship between the fields that make up PRISM Rights Summary Metadata.

<?xml version = "1.0" encoding = "UTF-8"?>

<!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

                           PRISM RIGHTS: XSD

     ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

xmlns:prs="http://prismstandard.org/namespaces/prismusagerights/3.1"

targetNamespace="http://prismstandard.org/namespaces/prismusagerights/3.1"

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:dc="http://purl.org/dc/elements/1.1/"

xmlns:prism="http://prismstandard.org/namespaces/basic/3.0/"

xmlns:pur="http://prismstandard.org/namespaces/prismusagerights/3.0/"

elementFormDefault="qualified"

attributeFormDefault="qualified"

version="draftPRS11182014">

 

       <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>

       <xs:import namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#" schemaLocation="rdf.xsd"/>

       <xs:import namespace="http://purl.org/dc/elements/1.1/" schemaLocation="dc.xsd"/>

       <xs:import namespace="http://prismstandard.org/namespaces/basic/3.0/" schemaLocation="prism.xsd"/>

       <xs:import namespace="http://prismstandard.org/namespaces/prismusagerights/3.0/" schemaLocation="pur.xsd"/>

 

<!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->

 

<!--===                                                            ===-->

<!--===                                 ELEMENT DEFINITIONS        ===-->

<!--===                                                            ===-->

 

 

<!--===  Virtual Root Container for all PUR Elements for the Rights Guide ===-->

 

       <xs:element name = "rightsSummary">

             <xs:complexType>

             <xs:annotation><xs:documentation>This is a virtual organizing structure for the new PUR metadata</xs:documentation></xs:annotation>

                    <xs:sequence>

                           <xs:element ref="dc:identifier" />

                           <xs:element ref="prs:assetLink" minOccurs = "1" maxOccurs="unbounded"/>

                           <xs:element ref = "prs:agreementLink" minOccurs = "1" maxOccurs="unbounded"/>

                           <xs:element ref = "prs:generalInfo" minOccurs = "0" />

                           <xs:element ref = "prs:partyInfo" minOccurs = "0" />

                           <xs:element ref = "prs:permissions"  minOccurs="0" maxOccurs = "1"/>                      

                           <xs:element ref = "prs:restrictions" minOccurs="0" maxOccurs = "1"/>

                    </xs:sequence>

             </xs:complexType>

       </xs:element>

 

<!--===                                 ===-->

<!--===       Action             ===-->

<!--===                                 ===-->

 

             <xs:element name = "action">

                                 <xs:simpleType>

                                 <xs:annotation><xs:documentation>An action defines the exact permitted or prohibited usage of an asset.  This element will contain enumerated values from the PRISM Community Rights Vocabulary (CV).  Examples of actions include use = any reasonable use of the asset; presentDisplay = to display on a screen; presentPlay = to play an asset such as an audio asset; presentPrint = to print; presentTextToSpeech = to present text as speech; aggregate = to aggregate with other assets; translate = to translate to another language; transform = to output in an alternate format.</xs:documentation></xs:annotation>

                                        <xs:restriction base="xs:NMTOKEN">

                                               <xs:enumeration value="use"/>

                                               <xs:enumeration value="presentDisplay"/>

                                               <xs:enumeration value="presentPlay"/>

                                               <xs:enumeration value="presentPrint"/>

                                               <xs:enumeration value="presentTextToSpeech"/>

                                               <xs:enumeration value="aggregate"/>

                                               <xs:enumeration value="translate"/>

                                               <xs:enumeration value="transform"/>

                                        </xs:restriction>

                                 </xs:simpleType>

       </xs:element>

 

<!--===                                 ===-->

<!--===  Adult Content Warning Type     ===-->

<!--===                                 ===-->

 

<!--         <xs:element name="adultContentWarning">

                    <xs:complexType>

                    <xs:annotation><xs:documentation>The Adult Content Warning element is used to specify a level violence, nudity and/or sexual references in the content.  While this element is descriptive, there may also be a duty to display the warning in any presentation.</xs:documentation></xs:annotation>

                    <xs:simpleContent>

                           <xs:extension base="xs:string">

                          <xs:attribute name="adultContentAge" type="xs:nonNegativeInteger"/>

                          <xs:attribute name="adultContentCode" type="xs:string"/>

                           </xs:extension>

                    </xs:simpleContent>

                    </xs:complexType>

             </xs:element>  -->

 

<!--===                                        ===-->

<!--===      Agreement Link      ===-->

<!--===                                        ===-->

 

       <xs:element name = "agreementLink">

             <xs:complexType >

             <xs:annotation><xs:documentation>A link to one or more agreements or contracts governing the use of a content/media asset.</xs:documentation></xs:annotation>

               <xs:simpleContent>

                    <xs:extension base="xs:string">          

                           <xs:attribute name="agreementIDRef" type="xs:anyURI" use="required"/>

                           <xs:attribute name="agreementType" type="xs:string"/>

                    </xs:extension>

               </xs:simpleContent>

             </xs:complexType>

       </xs:element>

      

<!--===                                        ===-->

<!--===      Asset Link   ===-->

<!--===                                        ===-->

       <xs:element name="assetLink">

             <xs:complexType>

                    <xs:annotation><xs:documentation>A link to the content/media asset(s) being described by this Rights Summary.</xs:documentation></xs:annotation>

                           <xs:attribute name="assetIDRef" type="xs:anyURI" use="required"/>

                    </xs:complexType>

       </xs:element>

 

<!--===                                        ===-->

<!--===             Copyright    ===-->

<!--===                                        ===-->

 

       <xs:element name = "copyright" >

             <xs:complexType>

                    <xs:simpleContent>

                           <xs:extension base="xs:string">

                           <xs:attribute ref="xml:lang"/>

                           <xs:attribute name="dir">

                                 <xs:simpleType>

                                 <xs:restriction base="xs:NMTOKEN">

                                        <xs:enumeration value="ltr"/>

                                 <xs:enumeration value="rtl"/>

                                 </xs:restriction>

                           </xs:simpleType>

                           </xs:attribute>

                           </xs:extension>

                    </xs:simpleContent>

             </xs:complexType>

       </xs:element>

 

       <!--===                                       ===-->

       <!--===       Constraint         ===-->

       <!--===                                       ===-->

             <xs:element name = "constraint">

                    <xs:complexType>

                    <xs:annotation><xs:documentation>A constraint places limits on the permission/restriction action.  Examples of constraintType= include embargoDate, exclusivity, exclusivityEndDate, option, optionEndDate, expirationDate, deliveryPlatform, distributionChannel, countryCode, inContext, inTitle, inBrand,  language, absolute size (replaces image size restriction) absolute position, relative size, relative position, resolution.</xs:documentation></xs:annotation>

                    <xs:simpleContent>

                           <xs:extension base="xs:string">

                           <xs:attribute name="constraintName" use="required">

                                 <xs:simpleType>

                                 <xs:restriction base="xs:NMTOKEN">

                                               <xs:enumeration value="embargoDate"/><!-- implied operator gteq -->

                                               <xs:enumeration value="exclusivity"/>

                                               <xs:enumeration value="exclusivityEndDate"/><!-- implied operator gteq -->

                                               <xs:enumeration value="option"/>

                                               <xs:enumeration value="optionEndDate"/><!-- implied operator lteq -->

                                               <xs:enumeration value="expirationDate"/><!-- implied operator lteq -->

                                               <xs:enumeration value="deliveryPlatform"/><!-- same as ODRL delivery channel -->

                                               <xs:enumeration value="distributionChannel"/><!-- publisher defined -->

                                               <xs:enumeration value="adultContentWarning"/><!-- implied operator eq -->

                                               <xs:enumeration value="adultContentAge"/><!-- implied operator eq -->

                                               <xs:enumeration value="countryCode"/>

                                               <xs:enumeration value="inContext"/>

                                              <xs:enumeration value="inTitle"/>

                                               <xs:enumeration value="inBrand"/>

                                               <xs:enumeration value="language"/>

                                               <xs:enumeration value="absoluteSize"/><!-- replaces image size restriction -->

                                               <xs:enumeration value="absolutePosition"/>

                                               <xs:enumeration value="relativeSize"/>

                                               <xs:enumeration value="relativePosition"/>

                                               <xs:enumeration value="resolution"/>

                                        </xs:restriction>

                                 </xs:simpleType>

                           </xs:attribute>

                           <xs:attribute name="constraintOperator">

                                 <xs:simpleType>

                                 <xs:restriction base="xs:NMTOKEN">

                                               <xs:enumeration value="lt"/><!-- less than -->

                                               <xs:enumeration value="gt"/><!-- greater than -->

                                               <xs:enumeration value="eq"/><!-- equal to -->

                                               <xs:enumeration value="lteq"/><!-- less than or equal to -->

                                               <xs:enumeration value="gteq"/><!-- greater than or equal to -->

                                        </xs:restriction>

                                 </xs:simpleType>

                           </xs:attribute>

                           <xs:attribute name="rightOperand" type="xs:string"/>

                           <xs:attribute name="datatype" type="xs:string" />

                           </xs:extension>

                           </xs:simpleContent>

                    </xs:complexType>

       </xs:element>

 

       <!--===                                 ===-->

       <!--===       Duty        ===-->

       <!--===                                 ===-->

 

       <xs:element name = "duty">

                                 <xs:simpleType>

                                 <xs:annotation><xs:documentation>A duty is an action that a publisher must take in order to have premission to use the asset.  Values include credit (replaces creditLine, compensate (replaces usageFee), inform and include(such as the text of the credit line, an image of the author, etc.)</xs:documentation></xs:annotation>

                                        <xs:restriction base="xs:NMTOKEN">

                                               <xs:enumeration value="credit"/>

                                               <xs:enumeration value="compensate"/>

                                               <xs:enumeration value="inform" />

                                               <xs:enumeration value="requestConsent"/>

                                               <xs:enumeration value="include"/>

                                        </xs:restriction>

                                 </xs:simpleType>

       </xs:element>

 

 

<!--===                                                     ===-->

<!--===       General Rights Info       ===-->

<!--            Legacy from PUR               -->

<!--===                                                     ===-->

       <xs:element name = "generalInfo">

             <xs:complexType>

             <xs:annotation><xs:documentation>This is a virtual organizing structure to contain legacy PUR metadata that does not map into ODRL right-to-use decision policies.</xs:documentation></xs:annotation>

                    <xs:sequence>                    

                           <xs:element ref = "pur:copyright" minOccurs = "0"/>

                           <xs:element ref = "prs:rightsAgent" minOccurs = "0" maxOccurs="unbounded"/>

                           <xs:element ref = "prs:rightsOwner" minOccurs = "0"/>

                    </xs:sequence>

             </xs:complexType>

       </xs:element>

 

 

<!--===                                        ===-->

<!--===             Permissions         ===-->

<!--===                                        ===-->

       <xs:element name = "permissions" >

             <xs:complexType>

             <xs:annotation><xs:documentation>Permissions is a virtual organizing structure for the 2014 version PRISM Rights metadata that is made up of one or more permission elements.</xs:documentation></xs:annotation>

                    <xs:sequence>

                           <xs:element ref="prs:permission" minOccurs="1" maxOccurs="unbounded"/>

                    </xs:sequence>

             </xs:complexType>

       </xs:element>

<!--===                                        ===-->

<!--===             Permission          ===-->

<!--===                                        ===-->

       <xs:element name = "permission" >

             <xs:complexType>

             <xs:annotation><xs:documentation>This model replaces the pur:permissions that is simply a text string that indicates permissions granted by a contract or agreement.  Metadata fields in this model will map into ODRL to drive the right-to-use decision policies.</xs:documentation></xs:annotation>

                    <xs:sequence>

                           <xs:element ref="prs:action" minOccurs="1" maxOccurs="unbounded" />

                           <xs:element ref="prs:constraint" minOccurs="0" maxOccurs="unbounded" />

                           <xs:sequence minOccurs="0" maxOccurs="unbounded" >

                                 <xs:element ref="prs:duty" />

                                 <xs:element ref="prs:partyLink" minOccurs="0" maxOccurs="unbounded" />

                           </xs:sequence>

                    </xs:sequence>

             </xs:complexType>

       </xs:element>

      

<!--===                                              ===-->

<!--===             Restrictions        ===-->

<!--===                                              ===-->

       <xs:element name = "restrictions" >

             <xs:complexType>

             <xs:annotation><xs:documentation>This model replaces the pur:restrictions model that was simply a text string to document restrictions on use.  Metadata fields in this model will map into ODRL to drive the right-to-use decision policies. </xs:documentation></xs:annotation>

                    <xs:sequence>

                           <xs:element ref="prs:prohibition" minOccurs="1" maxOccurs="unbounded"/>

                    </xs:sequence>

             </xs:complexType>

       </xs:element>

 

<!--===                                        ===-->

<!--===             Prohibition         ===-->

<!--===                                        ===-->

       <xs:element name = "prohibition" >

             <xs:complexType>

             <xs:annotation><xs:documentation>Each prohibition is made up of metadata fields that map into ODRL to drive the right-to-use decision policies. </xs:documentation></xs:annotation>

                    <xs:sequence>

                           <xs:element ref="prs:action" minOccurs="1" maxOccurs="unbounded" />

                           <xs:element ref="prs:constraint" minOccurs="0" maxOccurs="unbounded" />

                    </xs:sequence>

             </xs:complexType>

       </xs:element>

            

      

<!--===                                              ===-->

<!--===             Party Info                 ===-->

<!--===                                              ===-->

       <xs:element name = "partyInfo" >

             <xs:complexType>

             <xs:annotation><xs:documentation>The Party Information element is a virtual organizing structure for the 2014 version PRISM Rights metadata.  This structure has been designed to map directly into the construction of ODRL usage policies.</xs:documentation></xs:annotation>

                    <xs:sequence>

                           <xs:element ref="prs:party" minOccurs="1" maxOccurs="unbounded"/>

                    </xs:sequence>

             </xs:complexType>

       </xs:element>

      

      

<!--===                                        ===-->

<!--===             Party               ===-->

<!--===                                        ===-->

 

       <xs:element name = "party">

             <xs:complexType>

       <xs:annotation><xs:documentation>This model does what we attempted to imply with the rightsOwner/rightsAgent fields.  It is a field with enumerated values of attributedParty, informedParty, concentingParty, payeeParty and trackingParty.</xs:documentation></xs:annotation>   

       <xs:choice>

             <xs:element name="partyIDRef" type="xs:anyURI">

             <xs:annotation><xs:documentation>If the party is stored in a contacts database, the partyIDRef can be used to link directly to party contact information instead of providing contact information  into the summary rights metadata</xs:documentation></xs:annotation>

             </xs:element>

       <xs:sequence>

             <xs:element ref="dc:identifier"  ><xs:annotation><xs:documentation>A unique identifier for a party. The value of id= should be set to "partyID" for clarity.</xs:documentation></xs:annotation></xs:element>

             <xs:element name = "partyName" type="xs:string" ><xs:annotation><xs:documentation>The name of the party.</xs:documentation></xs:annotation></xs:element>

             <xs:element name = "partyPhone" type="xs:string" ><xs:annotation><xs:documentation>The phone contact of the party.</xs:documentation></xs:annotation></xs:element>

             <xs:element name = "partyEmail" type="xs:string" ><xs:annotation><xs:documentation>The email of the party.</xs:documentation></xs:annotation></xs:element>

             <xs:element name = "partyAddress" type="xs:string" minOccurs = "0" ><xs:annotation><xs:documentation>The street address of the party.</xs:documentation></xs:annotation></xs:element>

       </xs:sequence>

       </xs:choice>

              <xs:attribute name="function">

             <xs:annotation><xs:documentation>The function of the party comes from the CV for function so it can map into ODRL policy duty statements.</xs:documentation></xs:annotation>

                    <xs:simpleType>

                           <xs:restriction base="xs:NMTOKEN">

                                 <xs:enumeration value="attributedParty"/>

                                 <xs:enumeration value="informedParty"/>

                                 <xs:enumeration value="consentingParty"/>

                                 <xs:enumeration value="payeeParty"/>

                                 <xs:enumeration value="trackingParty"/>

                           </xs:restriction>

                    </xs:simpleType>

             </xs:attribute>

       </xs:complexType>

       </xs:element>

 

            

<!--===                                        ===-->

<!--===             Party Link          ===-->

<!--===                                        ===-->

 

       <xs:element name = "partyLink">

             <xs:complexType>

       <xs:annotation><xs:documentation>This field links a duty with a party.</xs:documentation></xs:annotation>     

                                 <xs:attribute name="function">

                                 <xs:annotation><xs:documentation>The function of the party comes from the CV for function so it can map into ODRL policy duty statements.</xs:documentation></xs:annotation>

                                 <xs:simpleType>

                                        <xs:restriction base="xs:NMTOKEN">

                                               <xs:enumeration value="attributedParty"/>

                                               <xs:enumeration value="informedParty"/>

                                               <xs:enumeration value="consentingParty"/>

                                               <xs:enumeration value="payeeParty"/>

                                               <xs:enumeration value="trackingParty"/>

                                        </xs:restriction>

                                 </xs:simpleType>

                                 </xs:attribute>

                                 <xs:attribute name="partyIDRef" type="xs:anyURI" >

                                 <xs:annotation><xs:documentation>The partyIDRef links to the contact information of a party.</xs:documentation></xs:annotation></xs:attribute>

             </xs:complexType>

       </xs:element>

 

 

 

<!--===                                              ===-->

<!--===       Rights Agent              ===-->

<!--===                                              ===-->

 

       <xs:element name = "rightsAgent">

             <xs:complexType>

             <xs:annotation><xs:documentation>The Rights Agent provides contact information for the person or organization that has the legal right to license the use of a resource  In the PRISM Rights Summary this has been replaced by Party to facilitate mapping directly into the construction of ODRL usage policies.</xs:documentation></xs:annotation>

                    <xs:simpleContent>

                           <xs:extension base="xs:string">

                                 <xs:attribute ref="xml:lang"/>

                                 <xs:attribute name="dir">

                                 <xs:simpleType>

                                        <xs:restriction base="xs:NMTOKEN">

                                               <xs:enumeration value="ltr"/>

                                        <xs:enumeration value="rtl"/>

                                        </xs:restriction>

                                 </xs:simpleType>

                                 </xs:attribute>

                           </xs:extension>

                    </xs:simpleContent>

             </xs:complexType>

       </xs:element>

 

<!--===                                              ===-->

<!--===       Rights Owner              ===-->

<!--===                                              ===-->

 

       <xs:element name = "rightsOwner">

             <xs:complexType>

             <xs:annotation><xs:documentation>The Rights Owner provides contact information for the person or organization that legaly owns an asset. In the PRISM Rights Summary this has been replaced by Party to facilitate mapping directly into the construction of ODRL usage policies.</xs:documentation></xs:annotation>

                    <xs:simpleContent>

                           <xs:extension base="xs:string">

                                 <xs:attribute ref="xml:lang"/>

                                 <xs:attribute name="dir">

                                 <xs:simpleType>

                                        <xs:restriction base="xs:NMTOKEN">

                                               <xs:enumeration value="ltr"/>

                                        <xs:enumeration value="rtl"/>

                                        </xs:restriction>

                                 </xs:simpleType>

                                 </xs:attribute>

                           </xs:extension>

                    </xs:simpleContent>

             </xs:complexType>

       </xs:element> </xs:schema>


Appendix B Rights Summary Tagging Example

This appendix contains an example of the expression of PRISM Rights Summary the XML Format.

<?xml version="1.0" encoding="UTF-8"?>
<prs:rightsSummary xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:prism="http://prismstandard.org/namespaces/basic/3.0/"
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:prs="http://prismstandard.org/namespaces/prismusagerights/3.1"
 xmlns:html5="http://www.w3.org/1999/xhtml"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://prismstandard.org/namespaces/prismusagerights/3.1 file:/C:/Users/dkennedy/Documents/IDEAlliance/PRISM%20RIGHTS%2014/NewPURxsd/NewPRS.xsd">
    <dc:identifier>identifier0</dc:identifier>
    <prs:assetLink prs:assetIDRef="assetIDRef0"/>
    <prs:assetLink prs:assetIDRef="assetIDRef1"/>
    <prs:agreementLink prs:agreementIDRef="agreementIDRef0">agreementLink0</prs:agreementLink>
    <prs:agreementLink prs:agreementIDRef="agreementIDRef1">agreementLink1</prs:agreementLink>
   <prs:permissions>
      <prs:permission>
         <prs:action>presentPrint</prs:action>
         <prs:action>presentDisplay</prs:action>
         <prs:action>presentTextToSpeech</prs:action>
        
<constraint constraintName=”embargoDate” constraintOperator=”gteq” rightOperand=”11182014” datatype=”xs:date” />
      </prs:permission>
   </prs:permissions>
</prs:rightsSummary>