Coverage Report - yarfraw.generated.mrss.elements.MrssExtension
 
Classes in this File Line Coverage Branch Coverage Complexity
MrssExtension
100% 
100% 
0
 
 1  
 //
 2  
 // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.1.5-b01-fcs 
 3  
 // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
 4  
 // Any modifications to this file will be lost upon recompilation of the source schema. 
 5  
 // Generated on: 2008.06.11 at 12:15:45 AM EDT 
 6  
 //
 7  
 
 8  
 
 9  
 package yarfraw.generated.mrss.elements;
 10  
 
 11  
 import java.util.ArrayList;
 12  
 import java.util.List;
 13  
 import javax.xml.bind.annotation.XmlAccessType;
 14  
 import javax.xml.bind.annotation.XmlAccessorType;
 15  
 import javax.xml.bind.annotation.XmlRootElement;
 16  
 import javax.xml.bind.annotation.XmlType;
 17  
 
 18  
 
 19  
 /**
 20  
  * <p>Java class for anonymous complex type.
 21  
  * 
 22  
  * <p>The following schema fragment specifies the expected content contained within this class.
 23  
  * 
 24  
  * <pre>
 25  
  * &lt;complexType>
 26  
  *   &lt;complexContent>
 27  
  *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 28  
  *       &lt;sequence>
 29  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}group" maxOccurs="unbounded" minOccurs="0"/>
 30  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}content" maxOccurs="unbounded" minOccurs="0"/>
 31  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}rating" minOccurs="0"/>
 32  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}title" minOccurs="0"/>
 33  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}description" minOccurs="0"/>
 34  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}keywords" minOccurs="0"/>
 35  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}thumbnail" minOccurs="0"/>
 36  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}category" maxOccurs="unbounded" minOccurs="0"/>
 37  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}hash" minOccurs="0"/>
 38  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}player" minOccurs="0"/>
 39  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}credit" maxOccurs="unbounded" minOccurs="0"/>
 40  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}restriction" minOccurs="0"/>
 41  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}copyright" minOccurs="0"/>
 42  
  *         &lt;element ref="{http://tools.search.yahoo.com/mrss/}text" minOccurs="0"/>
 43  
  *       &lt;/sequence>
 44  
  *     &lt;/restriction>
 45  
  *   &lt;/complexContent>
 46  
  * &lt;/complexType>
 47  
  * </pre>
 48  
  * 
 49  
  * 
 50  
  */
 51  
 @XmlAccessorType(XmlAccessType.FIELD)
 52  
 @XmlType(name = "", propOrder = {
 53  
     "group",
 54  
     "content",
 55  
     "rating",
 56  
     "title",
 57  
     "description",
 58  
     "keywords",
 59  
     "thumbnail",
 60  
     "category",
 61  
     "hash",
 62  
     "player",
 63  
     "credit",
 64  
     "restriction",
 65  
     "copyright",
 66  
     "text"
 67  
 })
 68  
 @XmlRootElement(name = "mrssExtension")
 69  6
 public class MrssExtension {
 70  
 
 71  
     protected List<MrssGroupType> group;
 72  
     protected List<MrssContentType> content;
 73  
     protected MrssRatingType rating;
 74  
     protected MrssTitleType title;
 75  
     protected MrssDescriptionType description;
 76  
     protected String keywords;
 77  
     protected MrssThumbnailType thumbnail;
 78  
     protected List<MrssCategoryType> category;
 79  
     protected MrssHashType hash;
 80  
     protected MrssPlayerType player;
 81  
     protected List<MrssCreditType> credit;
 82  
     protected MrssRestrictionType restriction;
 83  
     protected MrssCopyrightType copyright;
 84  
     protected MrssTextType text;
 85  
 
 86  
     /**
 87  
      *  
 88  
      * <strong>&lt;media:group&gt;</strong></p>
 89  
      * <p>&lt;media:group&gt; is a sub-element of &lt;item&gt;. It allows grouping of &lt;media:content&gt; elements that are effectively the same content, yet different representations. &nbsp; For instance: the same song recorded in both the WAV and MP3 format.
 90  
      * It's an optional element that must only be used for this purpose.</p>
 91  
      *                                                  
 92  
      *                                                 Gets the value of the group property.
 93  
      * 
 94  
      * <p>
 95  
      * This accessor method returns a reference to the live list,
 96  
      * not a snapshot. Therefore any modification you make to the
 97  
      * returned list will be present inside the JAXB object.
 98  
      * This is why there is not a <CODE>set</CODE> method for the group property.
 99  
      * 
 100  
      * <p>
 101  
      * For example, to add a new item, do as follows:
 102  
      * <pre>
 103  
      *    getGroup().add(newItem);
 104  
      * </pre>
 105  
      * 
 106  
      * 
 107  
      * <p>
 108  
      * Objects of the following type(s) are allowed in the list
 109  
      * {@link MrssGroupType }
 110  
      * 
 111  
      * 
 112  
      */
 113  
     public List<MrssGroupType> getGroup() {
 114  18
         if (group == null) {
 115  6
             group = new ArrayList<MrssGroupType>();
 116  
         }
 117  18
         return this.group;
 118  
     }
 119  
 
 120  
     /**
 121  
      *  
 122  
      * <strong>&lt;media:content&gt;</strong></p>
 123  
      * <p>&lt;media:content&gt; is a sub-element of either &lt;item&gt; or &lt;media:group&gt;.&nbsp;Media objects that are not the same content should not be included in the same &lt;media:group&gt; element. &nbsp;The sequence of these items implies the order of presentation.
 124  
      * While many of the attributes appear to be audio/video specific, this element can be used to publish any type of media. 
 125  
      * It contains 14 attributes, most of which are optional.</p>
 126  
      * 
 127  
      * <pre> 
 128  
      *         &lt;media:content 
 129  
      *                url="http://www.foo.com/movie.mov" 
 130  
      *                fileSize="12216320" 
 131  
      *                type="video/quicktime"
 132  
      *                medium="video"
 133  
      *                isDefault="true" 
 134  
      *                expression="full" 
 135  
      *                bitrate="128" 
 136  
      *                framerate="25"
 137  
      *                samplingrate="44.1"
 138  
      *                channels="2"
 139  
      *                duration="185" 
 140  
      *                height="200"
 141  
      *                width="300" 
 142  
      *                lang="en" /&gt;</pre>
 143  
      * 
 144  
      * <p><em>url</em> should specify the direct url to the media object. If not included, a &lt;media:player&gt; element must be specified.</p><p><em>fileSize</em> is the number of bytes of the media object. It is an optional attribute.</p>
 145  
      * <p><em>type</em> is the standard MIME type of the object. It is an optional attribute.</p>
 146  
      * 
 147  
      * <p><em>medium</em> is the type of object (image | audio | video | document | executable). While this attribute can at times seem redundant if <em>type</em> is supplied, it is included because it simplifies decision making on the reader side, as well as flushes out any ambiguities between MIME type and object type. It is an optional attribute.</p> 
 148  
      * 
 149  
      * 
 150  
      * <p><em>isDefault</em> determines if this is the default object that should be used for the &lt;media:group&gt;.  There should only be one default object per &lt;media:group&gt;.  It is an optional attribute.</p>
 151  
      * 
 152  
      * <p><em>expression</em> determines if the object is a sample or the full version of the object, or even if it is a continuous stream (sample | full | nonstop).  
 153  
      * Default value is 'full'.  
 154  
      * It is an optional attribute. </p>
 155  
      * 
 156  
      * <p><em>bitrate</em> is the kilobits per second rate of media.  It is an optional attribute.</p>
 157  
      * <p><em>framerate</em> is the number of frames per second for the media object.  It is an optional attribute.</p>
 158  
      * <p><em>samplingrate</em> is the number of samples per second taken to create the media object. It is expressed in thousands of samples per second (kHz). It is an optional attribute.</p>
 159  
      * <p><em>channels</em> is number of audio channels in the media object. It is an optional attribute.
 160  
      * </p><p><em>duration</em> is the number of seconds the media object plays.   It is an optional attribute.</p>
 161  
      * 
 162  
      * 
 163  
      * 
 164  
      * 
 165  
      * 
 166  
      * <p><em>height</em> is the height of the media object.  It is an optional attribute.</p>
 167  
      * <p><em>width</em> is the width of the media object.  It is an optional attribute.</p>
 168  
      * 
 169  
      * <p><em>lang</em> is the primary language encapsulated in the media object. Language codes possible are detailed in RFC 3066. This attribute is used similar to the <em>xml:lang</em> attribute detailed in the XML 1.0 Specification (Third Edition).  It is an optional attribute.</p>
 170  
      * 
 171  
      *         
 172  
      *         <p> These optional attributes, along with the optional elements below, contain the primary metadata entries needed to index and organize media content.
 173  
      *             Additional supported attributes for describing images, audio, and video may be added in future revisions of this document.</p>
 174  
      * <p><strong>Note:</strong> 
 175  
      * While both &lt;media:content&gt; and &lt;media:group&gt; have no limitations on the number of times they can appear, the general nature of RSS should be preserved: an &lt;item&gt; represents a "story". Simply stated, this is similar to the blog style of syndication.
 176  
      *  However, if one is using this module to strictly publish media, there should be one &lt;item&gt; element for each media object/group. This is to allow for proper attribution for the origination of the media content through the &lt;link&gt; element.  It also allows the full benefit of the other RSS elements to be realized.</p>
 177  
      *                                                  
 178  
      *                                                 Gets the value of the content property.
 179  
      * 
 180  
      * <p>
 181  
      * This accessor method returns a reference to the live list,
 182  
      * not a snapshot. Therefore any modification you make to the
 183  
      * returned list will be present inside the JAXB object.
 184  
      * This is why there is not a <CODE>set</CODE> method for the content property.
 185  
      * 
 186  
      * <p>
 187  
      * For example, to add a new item, do as follows:
 188  
      * <pre>
 189  
      *    getContent().add(newItem);
 190  
      * </pre>
 191  
      * 
 192  
      * 
 193  
      * <p>
 194  
      * Objects of the following type(s) are allowed in the list
 195  
      * {@link MrssContentType }
 196  
      * 
 197  
      * 
 198  
      */
 199  
     public List<MrssContentType> getContent() {
 200  12
         if (content == null) {
 201  6
             content = new ArrayList<MrssContentType>();
 202  
         }
 203  12
         return this.content;
 204  
     }
 205  
 
 206  
     /**
 207  
      *  
 208  
      * <p>This allows the permissible audience to be declared. If this element is not included, it assumes that no restrictions are necessary. It has one optional attribute. </p>
 209  
      * 
 210  
      * <pre>               &lt;media:rating scheme="urn:simple"&gt;adult&lt;/media:rating&gt;
 211  
      *                &lt;media:rating scheme="urn:icra"&gt;r (cz 1 lz 1 nz 1 oz 1 vz 1)&lt;/media:rating&gt;
 212  
      *                &lt;media:rating scheme="urn:mpaa"&gt;pg&lt;/media:rating&gt;
 213  
      *                &lt;media:rating scheme="urn:v-chip"&gt;tv-y7-fv&lt;/media:rating&gt;</pre>
 214  
      * 
 215  
      * 
 216  
      * <p><em>scheme</em> is the URI that identifies the rating scheme. It is an optional attribute. If this attribute is not included, the default scheme is urn:simple (adult | nonadult).</p>
 217  
      *                                                  
 218  
      *                                                 
 219  
      * 
 220  
      * @return
 221  
      *     possible object is
 222  
      *     {@link MrssRatingType }
 223  
      *     
 224  
      */
 225  
     public MrssRatingType getRating() {
 226  6
         return rating;
 227  
     }
 228  
 
 229  
     /**
 230  
      * Sets the value of the rating property.
 231  
      * 
 232  
      * @param value
 233  
      *     allowed object is
 234  
      *     {@link MrssRatingType }
 235  
      *     
 236  
      */
 237  
     public void setRating(MrssRatingType value) {
 238  6
         this.rating = value;
 239  6
     }
 240  
 
 241  
     /**
 242  
      *  
 243  
      * <strong>&lt;media:title&gt;</strong></p>
 244  
      * <p>The title of the particular media object.  It has 1 optional attribute.</p>
 245  
      * <pre>        &lt;media:title type="plain"&gt;The Judy's - The Moo Song&lt;/media:title&gt;</pre>
 246  
      * 
 247  
      * <p><em>type</em> specifies the type of text embedded. Possible values are either 'plain' or 'html'. Default value is 'plain'. All html must be entity-encoded. It is an optional attribute.
 248  
      *                                                  
 249  
      *                                                 
 250  
      * 
 251  
      * @return
 252  
      *     possible object is
 253  
      *     {@link MrssTitleType }
 254  
      *     
 255  
      */
 256  
     public MrssTitleType getTitle() {
 257  6
         return title;
 258  
     }
 259  
 
 260  
     /**
 261  
      * Sets the value of the title property.
 262  
      * 
 263  
      * @param value
 264  
      *     allowed object is
 265  
      *     {@link MrssTitleType }
 266  
      *     
 267  
      */
 268  
     public void setTitle(MrssTitleType value) {
 269  6
         this.title = value;
 270  6
     }
 271  
 
 272  
     /**
 273  
      *  
 274  
      * <strong>&lt;media:description&gt;</strong></p>
 275  
      * <p>Short description describing the media object typically a sentence in length. It has 1 optional attribute.</p>
 276  
      * <pre>        &lt;media:description type="plain"&gt;This was some really bizarre band I listened to as a young lad.&lt;/media:description&gt;</pre>
 277  
      * <p><em>type</em> specifies the type of text embedded. Possible values are either 'plain' or 'html'. Default value is 'plain'. All html must be entity-encoded. It is an optional attribute.</p>
 278  
      *                                                  
 279  
      *                                                 
 280  
      * 
 281  
      * @return
 282  
      *     possible object is
 283  
      *     {@link MrssDescriptionType }
 284  
      *     
 285  
      */
 286  
     public MrssDescriptionType getDescription() {
 287  6
         return description;
 288  
     }
 289  
 
 290  
     /**
 291  
      * Sets the value of the description property.
 292  
      * 
 293  
      * @param value
 294  
      *     allowed object is
 295  
      *     {@link MrssDescriptionType }
 296  
      *     
 297  
      */
 298  
     public void setDescription(MrssDescriptionType value) {
 299  6
         this.description = value;
 300  6
     }
 301  
 
 302  
     /**
 303  
      *  
 304  
      * <strong>&lt;media:keywords&gt;</strong></p>
 305  
      * <p>Highly relevant keywords describing the media object with typically a maximum of ten words. The keywords and phrases should be comma delimited.</p>
 306  
      * 
 307  
      * <pre>        &lt;media:keywords&gt;kitty, cat, big dog, yarn, fluffy&lt;/media:keywords&gt;</pre>
 308  
      *                                                  
 309  
      *                                                 
 310  
      * 
 311  
      * @return
 312  
      *     possible object is
 313  
      *     {@link String }
 314  
      *     
 315  
      */
 316  
     public String getKeywords() {
 317  6
         return keywords;
 318  
     }
 319  
 
 320  
     /**
 321  
      * Sets the value of the keywords property.
 322  
      * 
 323  
      * @param value
 324  
      *     allowed object is
 325  
      *     {@link String }
 326  
      *     
 327  
      */
 328  
     public void setKeywords(String value) {
 329  6
         this.keywords = value;
 330  6
     }
 331  
 
 332  
     /**
 333  
      *  
 334  
      * <strong>&lt;media:thumbnail&gt;</strong></p>
 335  
      * 
 336  
      * 
 337  
      * <p>Allows particular images to be used as representative images for the media object. If multiple thumbnails are included, and time coding is not at play, it is assumed that the images are in order of importance. It has 1 required attribute and 3 optional attributes.</p>
 338  
      * 
 339  
      * 
 340  
      * 
 341  
      * 
 342  
      * 
 343  
      *          <pre>        &lt;media:thumbnail url="http://www.foo.com/keyframe.jpg" width="75" height="50" time="12:05:01.123" /&gt;</pre>
 344  
      * <p><em>url</em> specifies the url of the thumbnail. It is a required attribute.</p>        <p> <em>height</em> specifies the height of the thumbnail. It is an optional attribute.</p>
 345  
      *         <p> <em>width</em> specifies the width of the thumbnail. It is an optional attribute.</p>
 346  
      * 
 347  
      * 
 348  
      * <p><em>time</em>
 349  
      * specifies the time offset in relation to the media object. Typically this is used when creating multiple keyframes within a single video. The format for this attribute should be in the DSM-CC's Normal Play Time (NTP) as used in RTSP [<a href="http://www.ietf.org/rfc/rfc2326.txt">RFC 2326 3.6 Normal Play Time</a>]. It is an optional attribute. </p>
 350  
      * 
 351  
      * <p><strong>Notes:</strong></p>
 352  
      * <p>NTP has a second or subsecond resolution. It is specified as H:M:S.h (npt-hhmmss) or S.h (npt-sec), where H=hours, M=minutes, S=second and h=fractions of a second.</p>
 353  
      * <p>A possible alternative to NTP would be SMPTE. It is believed that NTP is simpler and easier to use.</p>
 354  
      *                                                  
 355  
      *                                                 
 356  
      * 
 357  
      * @return
 358  
      *     possible object is
 359  
      *     {@link MrssThumbnailType }
 360  
      *     
 361  
      */
 362  
     public MrssThumbnailType getThumbnail() {
 363  6
         return thumbnail;
 364  
     }
 365  
 
 366  
     /**
 367  
      * Sets the value of the thumbnail property.
 368  
      * 
 369  
      * @param value
 370  
      *     allowed object is
 371  
      *     {@link MrssThumbnailType }
 372  
      *     
 373  
      */
 374  
     public void setThumbnail(MrssThumbnailType value) {
 375  6
         this.thumbnail = value;
 376  6
     }
 377  
 
 378  
     /**
 379  
      *  
 380  
      * <strong>&lt;media:category&gt;</strong></p>
 381  
      *         <p> Allows a taxonomy to be set that gives an indication of the type of media content, and its particular contents.  
 382  
      * It has 2 optional attributes.  </p>
 383  
      * <pre>        &lt;media:category scheme="http://search.yahoo.com/mrss/category_
 384  
      *         schema"&gt;music/artist/album/song&lt;/media:category&gt;
 385  
      * 
 386  
      *         &lt;media:category scheme="http://dmoz.org" label="Ace Ventura - Pet 
 387  
      *         Detective"&gt;Arts/Movies/Titles/A/Ace_Ventura_Series/Ace_Ventura_
 388  
      *         -_Pet_Detective&lt;/media:category&gt;
 389  
      * 
 390  
      *         &lt;media:category scheme="urn:flickr:tags"&gt;ycantpark 
 391  
      *         mobile&lt;/media:category&gt;</pre>
 392  
      * 
 393  
      * <p><em>scheme</em> is the URI that identifies the categorization scheme. It is an optional attribute. If this attribute is not included, the default scheme is 'http://search.yahoo.com/mrss/category_schema'.</p> 
 394  
      * 
 395  
      * <p><em>label</em> is the human readable label that can be displayed in end user applications.  It is an optional attribute.</p>
 396  
      *                                                  
 397  
      *                                                 Gets the value of the category property.
 398  
      * 
 399  
      * <p>
 400  
      * This accessor method returns a reference to the live list,
 401  
      * not a snapshot. Therefore any modification you make to the
 402  
      * returned list will be present inside the JAXB object.
 403  
      * This is why there is not a <CODE>set</CODE> method for the category property.
 404  
      * 
 405  
      * <p>
 406  
      * For example, to add a new item, do as follows:
 407  
      * <pre>
 408  
      *    getCategory().add(newItem);
 409  
      * </pre>
 410  
      * 
 411  
      * 
 412  
      * <p>
 413  
      * Objects of the following type(s) are allowed in the list
 414  
      * {@link MrssCategoryType }
 415  
      * 
 416  
      * 
 417  
      */
 418  
     public List<MrssCategoryType> getCategory() {
 419  6
         if (category == null) {
 420  6
             category = new ArrayList<MrssCategoryType>();
 421  
         }
 422  6
         return this.category;
 423  
     }
 424  
 
 425  
     /**
 426  
      *  
 427  
      * <strong>&lt;media:hash&gt;</strong></p>
 428  
      * 
 429  
      * <p> This is the hash of the binary media file. It can appear multiple times as long as each instance is a different <em>algo</em>. It has 1 optional attribute.</p><p></p>
 430  
      * 
 431  
      * <pre>        &lt;media:hash algo="md5"&gt;dfdec888b72151965a34b4b59031290a&lt;/media:hash&gt;</pre>
 432  
      * 
 433  
      * <p><em>algo</em> indicates the algorithm used to create the hash. Possible values are 'md5' and 'sha-1'. Default value is 'md5'. It is an optional attribute.
 434  
      *                                                  
 435  
      *                                                 
 436  
      * 
 437  
      * @return
 438  
      *     possible object is
 439  
      *     {@link MrssHashType }
 440  
      *     
 441  
      */
 442  
     public MrssHashType getHash() {
 443  6
         return hash;
 444  
     }
 445  
 
 446  
     /**
 447  
      * Sets the value of the hash property.
 448  
      * 
 449  
      * @param value
 450  
      *     allowed object is
 451  
      *     {@link MrssHashType }
 452  
      *     
 453  
      */
 454  
     public void setHash(MrssHashType value) {
 455  6
         this.hash = value;
 456  6
     }
 457  
 
 458  
     /**
 459  
      *  
 460  
      * <strong>&lt;media:player&gt;</strong></p>
 461  
      * <p>Allows the media object to be accessed through a web browser media player console. 
 462  
      *  This element is required only if a direct media <em>url</em> attribute is not specified in the &lt;media:content&gt; element.  It has 1 required attribute, and 2 optional attributes.</p>
 463  
      * 
 464  
      * <pre>        &lt;media:player url="http://www.foo.com/player?id=1111" height="200" width="400" /&gt;</pre>
 465  
      * <p><em>url</em> is the url of the player console that plays the media.  It is a required attribute.</p>
 466  
      * <p><em>height</em> is the height of the browser window that the <em>url</em> should be opened in.   It is an optional attribute.</p>
 467  
      * <p><em>width</em> is the width of the browser window that the <em>url</em> should be opened in.  It is an optional attribute.</p>
 468  
      *                                                  
 469  
      *                                                 
 470  
      * 
 471  
      * @return
 472  
      *     possible object is
 473  
      *     {@link MrssPlayerType }
 474  
      *     
 475  
      */
 476  
     public MrssPlayerType getPlayer() {
 477  6
         return player;
 478  
     }
 479  
 
 480  
     /**
 481  
      * Sets the value of the player property.
 482  
      * 
 483  
      * @param value
 484  
      *     allowed object is
 485  
      *     {@link MrssPlayerType }
 486  
      *     
 487  
      */
 488  
     public void setPlayer(MrssPlayerType value) {
 489  6
         this.player = value;
 490  6
     }
 491  
 
 492  
     /**
 493  
      *  
 494  
      * <strong>&lt;media:credit&gt;</strong></p>
 495  
      * <p>Notable entity and the contribution to the creation of the media object. Current entities can include people, companies, locations, etc. Specific entities can have multiple roles, and several entities can have the same role. 
 496  
      *  These should appear as distinct &lt;media:credit&gt; elements. 
 497  
      *  It has 2 optional attributes.</p>
 498  
      * <pre>        &lt;media:credit role="producer" scheme="urn:ebu"&gt;entity name&lt;/media:credit&gt;
 499  
      * </pre>
 500  
      * <p>role specifies the role the entity played. Must be lowercase.  It is an optional attribute.</p>
 501  
      * 
 502  
      * <p><em>scheme</em> is the URI that identifies the role scheme. It is an optional attribute. If this attribute is not included, the default scheme is 'urn:ebu'. See: European Broadcasting Union Role Codes.</p>
 503  
      * 
 504  
      * 
 505  
      * <p>Example roles:</p>
 506  
      * <pre>        actor
 507  
      *         anchor person
 508  
      *         author
 509  
      *         choreographer
 510  
      *         composer
 511  
      *         conductor
 512  
      *         director
 513  
      *         editor
 514  
      *         graphic designer     
 515  
      *         grip
 516  
      *         illustrator
 517  
      *         lyricist
 518  
      *         music arranger
 519  
      *         music group
 520  
      *         musician
 521  
      *         orchestra
 522  
      *         performer
 523  
      *         photographer
 524  
      *         producer
 525  
      *         reporter
 526  
      *         vocalist
 527  
      * </pre>
 528  
      * <p>Additional roles: <a href="http://www.ebu.ch/en/technical/metadata/specifications/role_codes.php">European Broadcasting Union Role Codes</a>
 529  
      *                                                  
 530  
      *                                                 Gets the value of the credit property.
 531  
      * 
 532  
      * <p>
 533  
      * This accessor method returns a reference to the live list,
 534  
      * not a snapshot. Therefore any modification you make to the
 535  
      * returned list will be present inside the JAXB object.
 536  
      * This is why there is not a <CODE>set</CODE> method for the credit property.
 537  
      * 
 538  
      * <p>
 539  
      * For example, to add a new item, do as follows:
 540  
      * <pre>
 541  
      *    getCredit().add(newItem);
 542  
      * </pre>
 543  
      * 
 544  
      * 
 545  
      * <p>
 546  
      * Objects of the following type(s) are allowed in the list
 547  
      * {@link MrssCreditType }
 548  
      * 
 549  
      * 
 550  
      */
 551  
     public List<MrssCreditType> getCredit() {
 552  12
         if (credit == null) {
 553  6
             credit = new ArrayList<MrssCreditType>();
 554  
         }
 555  12
         return this.credit;
 556  
     }
 557  
 
 558  
     /**
 559  
      *  
 560  
      * <strong>&lt;media:restriction&gt; </strong></p>
 561  
      * 
 562  
      * <p>Allows restrictions to be placed on the aggregator rendering the media in the feed. Currently, restrictions are based on distributor (uri) and country codes.  This element is purely informational and no obligation can be assumed or implied. 
 563  
      * Only one &lt;media:restriction&gt; element of the same <em>type</em> can be applied to a media object - all others will be ignored.&nbsp;Entities in this element should be space separated. To allow the producer to explicitly declare his/her intentions, two literals are reserved: 'all', 'none'. These literals can only be used once. This element has 1 required attribute, and 1 optional attribute (with strict requirements for its exclusion).</p>
 564  
      * 
 565  
      * <pre>        &lt;media:restriction relationship="allow" type="country"&gt;au us&lt;/media:restriction&gt;</pre>
 566  
      * 
 567  
      * <p><em>relationship</em> indicates the type of relationship that the restriction represents (allow | deny). In the example above, the media object should only be syndicated in Australia and the United States. It is a required attribute.</p>
 568  
      * 
 569  
      * <p><strong>Note:</strong> If the "allow" element is empty and the type is relationship is "allow", it is assumed that the empty list means "allow nobody" and the media should not be syndicated.</p>
 570  
      * <p>A more explicit method would be:</p>
 571  
      * 
 572  
      * <pre>        &lt;media:restriction relationship="allow" type="country"&gt;au us&lt;/media:restriction&gt;</pre>
 573  
      * 
 574  
      * <p><em>type</em> specifies the type of restriction (country | uri) that the media can be syndicated. It is an optional attribute; however can only be excluded when using one of the literal values "all" or "none". </p>
 575  
      * 
 576  
      * <p>"country" allows restrictions to be placed based on country code. [<a href="http://www.iso.org/iso/en/prods-services/iso3166ma/index.html">ISO 3166</a>]</p>
 577  
      * <p>"uri" allows restrictions based on URI. Examples: urn:apple, http://images.google.com, urn:yahoo, etc.
 578  
      *                                                  
 579  
      *                                                 
 580  
      * 
 581  
      * @return
 582  
      *     possible object is
 583  
      *     {@link MrssRestrictionType }
 584  
      *     
 585  
      */
 586  
     public MrssRestrictionType getRestriction() {
 587  6
         return restriction;
 588  
     }
 589  
 
 590  
     /**
 591  
      * Sets the value of the restriction property.
 592  
      * 
 593  
      * @param value
 594  
      *     allowed object is
 595  
      *     {@link MrssRestrictionType }
 596  
      *     
 597  
      */
 598  
     public void setRestriction(MrssRestrictionType value) {
 599  6
         this.restriction = value;
 600  6
     }
 601  
 
 602  
     /**
 603  
      *  
 604  
      * <strong>&lt;media:copyright&gt;</strong></p>
 605  
      * <p>Copyright information for media object.  It has 1 optional attribute.</p>
 606  
      * <pre>        &lt;media:copyright url="http://blah.com/additional-info.html"&gt;2005 FooBar Media&lt;/media:copyright&gt;</pre>
 607  
      * <p><em>url</em> is the url for a terms of use page or additional copyright information. If the media is operating under a Creative Commons license, the Creative Commons module should be used instead. It is an optional attribute.</p>
 608  
      *                                                  
 609  
      *                                                 
 610  
      * 
 611  
      * @return
 612  
      *     possible object is
 613  
      *     {@link MrssCopyrightType }
 614  
      *     
 615  
      */
 616  
     public MrssCopyrightType getCopyright() {
 617  6
         return copyright;
 618  
     }
 619  
 
 620  
     /**
 621  
      * Sets the value of the copyright property.
 622  
      * 
 623  
      * @param value
 624  
      *     allowed object is
 625  
      *     {@link MrssCopyrightType }
 626  
      *     
 627  
      */
 628  
     public void setCopyright(MrssCopyrightType value) {
 629  6
         this.copyright = value;
 630  6
     }
 631  
 
 632  
     /**
 633  
      *  
 634  
      * <strong>&lt;media:text&gt;</strong></p>
 635  
      * <p>Allows the inclusion of a text transcript, closed captioning, or lyrics of the media content. Many of these elements are permitted to provide a time series of text. In such cases, it is encouraged, but not required, that the elements be grouped by language and appear in time sequence order based on the <em>start</em> time. Elements can have overlapping <em>start</em> and <em>end</em> times. It has 4 optional attributes.</p><pre>        &lt;media:text type="plain" lang="en" start="00:00:03.000" 
 636  
      *         end="00:00:10.000"&gt; Oh, say, can you see&lt;/media:text&gt;
 637  
      * 
 638  
      *         &lt;media:text type="plain" lang="en" start="00:00:10.000" 
 639  
      *         end="00:00:17.000"&gt;By the dawn's early light&lt;/media:text&gt;
 640  
      * </pre>
 641  
      * <p><em>type</em> specifies the type of text embedded. Possible values are either 'plain' or 'html'. Default value is 'plain'. All html must be entity-encoded. It is an optional attribute. </p>
 642  
      * 
 643  
      * 
 644  
      * 
 645  
      * 
 646  
      * 
 647  
      * 
 648  
      * <p><em>lang</em> is the primary language encapsulated in the media object. Language codes possible are detailed in RFC 3066. This attribute is used similar to the xml:lang attribute detailed in the XML 1.0 Specification (Third Edition). It is an optional attribute.</p>
 649  
      * 
 650  
      * <p><em>start</em> specifies the start time offset that the text starts being relevant to the media object. An example of this would be for closed captioning. 
 651  
      *  It uses the NTP time code format (see: the time attribute used in &lt;media:thumbnail&gt;).  &nbsp; It is an optional attribute.</p>
 652  
      * 
 653  
      * <p><em>end</em> specifies the end time that the text is relevant. 
 654  
      * If this attribute is not provided, and a <em>start</em> time is used, it is expected that the end time is either the end of the clip or the start of the next &lt;media:text&gt; element.
 655  
      * 
 656  
      *                                                  
 657  
      *                                                 
 658  
      * 
 659  
      * @return
 660  
      *     possible object is
 661  
      *     {@link MrssTextType }
 662  
      *     
 663  
      */
 664  
     public MrssTextType getText() {
 665  6
         return text;
 666  
     }
 667  
 
 668  
     /**
 669  
      * Sets the value of the text property.
 670  
      * 
 671  
      * @param value
 672  
      *     allowed object is
 673  
      *     {@link MrssTextType }
 674  
      *     
 675  
      */
 676  
     public void setText(MrssTextType value) {
 677  6
         this.text = value;
 678  6
     }
 679  
 
 680  
 }