TvContentRating.java revision e6dca2cfa4eecd3a45792703b722fc3ef86e8744
1e16873467cda89d905027458e2664c759465d463Sungsoo Lim/* 2e16873467cda89d905027458e2664c759465d463Sungsoo Lim * Copyright (C) 2014 The Android Open Source Project 3e16873467cda89d905027458e2664c759465d463Sungsoo Lim * 4e16873467cda89d905027458e2664c759465d463Sungsoo Lim * Licensed under the Apache License, Version 2.0 (the "License"); 5e16873467cda89d905027458e2664c759465d463Sungsoo Lim * you may not use this file except in compliance with the License. 6e16873467cda89d905027458e2664c759465d463Sungsoo Lim * You may obtain a copy of the License at 7e16873467cda89d905027458e2664c759465d463Sungsoo Lim * 8e16873467cda89d905027458e2664c759465d463Sungsoo Lim * http://www.apache.org/licenses/LICENSE-2.0 9e16873467cda89d905027458e2664c759465d463Sungsoo Lim * 10e16873467cda89d905027458e2664c759465d463Sungsoo Lim * Unless required by applicable law or agreed to in writing, software 11e16873467cda89d905027458e2664c759465d463Sungsoo Lim * distributed under the License is distributed on an "AS IS" BASIS, 12e16873467cda89d905027458e2664c759465d463Sungsoo Lim * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13e16873467cda89d905027458e2664c759465d463Sungsoo Lim * See the License for the specific language governing permissions and 14e16873467cda89d905027458e2664c759465d463Sungsoo Lim * limitations under the License. 15e16873467cda89d905027458e2664c759465d463Sungsoo Lim */ 16e16873467cda89d905027458e2664c759465d463Sungsoo Lim 17e16873467cda89d905027458e2664c759465d463Sungsoo Limpackage android.media.tv; 18e16873467cda89d905027458e2664c759465d463Sungsoo Lim 196057102dbb746593a7d59cf377c969b62e38c664Jae Seoimport android.annotation.SystemApi; 205c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Limimport android.net.Uri; 21e16873467cda89d905027458e2664c759465d463Sungsoo Limimport android.text.TextUtils; 22e16873467cda89d905027458e2664c759465d463Sungsoo Limimport android.util.Log; 23e16873467cda89d905027458e2664c759465d463Sungsoo Lim 24e16873467cda89d905027458e2664c759465d463Sungsoo Limimport java.util.Arrays; 256057102dbb746593a7d59cf377c969b62e38c664Jae Seoimport java.util.Collections; 26e16873467cda89d905027458e2664c759465d463Sungsoo Limimport java.util.List; 27e16873467cda89d905027458e2664c759465d463Sungsoo Lim 28e16873467cda89d905027458e2664c759465d463Sungsoo Lim/** 29e16873467cda89d905027458e2664c759465d463Sungsoo Lim * A class representing a TV content rating. 305c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * When a TV input service provides the content rating information of a program into TV provider, 315c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * TvContentRating class will be used for generating the value of {@link 325c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * TvContract.Programs#COLUMN_CONTENT_RATING}. To create an object of {@link TvContentRating}, use 335c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * the {@link #createRating} method with valid arguments. The arguments could be a system defined 345c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * strings, or a TV input service defined strings. 355c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * TV input service defined strings are in an xml file defined in <code><{@link 365c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * android.R.styleable#TvInputService tv-input}></code> with the {@link 375c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * android.R.attr#contentRatingSystemXml contentRatingSystemXml} attribute by the TV input service. 385c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * 395c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <h3> Content Rating System XML format </h3> 405c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * The XML file for publishing content rating system should follow the DTD bellow: 415c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <p><pre class="prettyprint"> 425c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <?xml version="1.0" encoding="UTF-8"?> 435c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!DOCTYPE rating-systems [ 445c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ELEMENT rating-system-definitions (rating-system-definition+)> 455c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ELEMENT rating-system-definition ( 465c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * (sub-rating-definition*, rating-definition, sub-rating-definition*)+, order*)> 475c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ATTLIST rating-system-definition 485c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * id ID #REQUIRED 495c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * displayName CDATA #IMPLIED 505c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * description CDATA #IMPLIED 515c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * country CDATA #IMPLIED> 525c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ELEMENT sub-rating-definition EMPTY> 535c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ATTLIST sub-rating-definition 545c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * id ID #REQUIRED 555c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * displayName CDATA #IMPLIED 565c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * icon CDATA #IMPLIED 575c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * description CDATA #IMPLIED> 585c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ELEMENT rating-definition (sub-rating*))> 595c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ATTLIST rating-definition 605c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * id ID #REQUIRED 615c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * displayName CDATA #IMPLIED 625c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * icon CDATA #IMPLIED 635c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * description CDATA #IMPLIED> 645c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ELEMENT sub-rating EMPTY> 655c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ATTLIST sub-rating id IDREF #REQUIRED> 665c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ELEMENT order (rating, rating+)> 675c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ELEMENT rating EMPTY> 685c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <!ATTLIST rating id IDREF #REQUIRED> 695c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * ]> 705c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </pre></p> 715c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * 725c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <h3>System defined rating strings</h3> 735c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * 745c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <u>System defined string for {@code domain}</u> 755c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <table border="0" cellspacing="0" cellpadding="0"> 765c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 775c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>String value</td> 785c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Comments</td> 795c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 805c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 815c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>android.media.tv</td> 825c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Used for creating system defined content ratings</td> 835c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 845c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </table> 855c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <u>System defined string for {@code ratingSystem}</u> 865c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <table border="0" cellspacing="0" cellpadding="0"> 875c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 885c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>String value</td> 895c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Comments</td> 905c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 91e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 92e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AM_TV</td> 93e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 94e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 95e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 96e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AR_TV</td> 97e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 98e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 99e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 100e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AU_TV</td> 101e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 102e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 103e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 104e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>BG_TV</td> 105e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 106e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 107e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 108e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>BR_TV</td> 109e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 110e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 111e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 112e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CA_TV</td> 113e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 114e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 115e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 116e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CH_TV</td> 117e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 118e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 119e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 120e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CL_TV</td> 121e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 122e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 123e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 124e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CO_TV</td> 125e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 126e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 127e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 128e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>DE_TV</td> 129e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 130e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 131e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 132e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>DK_TV</td> 133e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 134e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 135e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 136e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ES_TV</td> 137e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 138e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 139e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 140e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>FI_TV</td> 141e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 142e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 143e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 144e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>FR_TV</td> 145e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 146e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 147e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 148e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>GR_TV</td> 149e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 150e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 151e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 152e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>HK_TV</td> 153e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 154e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 155e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 156e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>HU_TV</td> 157e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 158e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 159e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 160e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ID_TV</td> 161e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 162e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 163e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 164e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IE_TV</td> 165e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 166e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 167e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 168e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IL_TV</td> 169e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 170e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 171e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 172e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IN_TV</td> 173e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 174e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 175e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 176e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IS_TV</td> 177e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 178e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 179e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 180e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IT_TV</td> 181e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 182e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 183e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 184e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KH_TV</td> 185e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 186e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 1875c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 1885c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>KR_TV</td> 1895c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>The South Korean television rating system</td> 1905c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 191e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 192e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MV_TV</td> 193e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 194e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 195e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 196e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MX_TV</td> 197e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 198e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 199e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 200e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MY_TV</td> 201e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 202e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 203e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 204e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>NL_TV</td> 205e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 206e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 207e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 208e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>NZ_TV</td> 209e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 210e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 211e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 212e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PE_TV</td> 213e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 214e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 215e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 216e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PH_TV</td> 217e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 218e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 219e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 220e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PL_TV</td> 221e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 222e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 223e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 224e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PT_TV</td> 225e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 226e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 227e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 228e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RO_TV</td> 229e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 230e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 231e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 232e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RU_TV</td> 233e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 234e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 235e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 236e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RS_TV</td> 237e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 238e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 239e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 240e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>SG_TV</td> 241e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 242e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 243e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 244e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>SI_TV</td> 245e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 246e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 247e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 248e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TH_TV</td> 249e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 250e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 251e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 252e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TR_TV</td> 253e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 254e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 255e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 256e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TW_TV</td> 257e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 258e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 259e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 260e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>UA_TV</td> 261e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 262e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 263e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <tr> 264e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>US_TVPG</td> 265e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>The TV Parental Guidelines for US TV content ratings</td> 266e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr> 267e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 268e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>VE_TV</td> 269e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 270e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 271e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 272e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ZA_TV</td> 273e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 274e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 2755c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </table> 2765c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * 2775c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <u>System defined string for {@code rating}</u> 2785c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <table border="0" cellspacing="0" cellpadding="0"> 2795c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 2805c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>String value</td> 2815c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Comments</td> 2825c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 283e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 284e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AM_TV_ALL</td> 285e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 286e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 287e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 288e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AR_TV_ALL</td> 289e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 290e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 291e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 292e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AU_TV_ALL</td> 293e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 294e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 295e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 296e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>BG_TV_ALL</td> 297e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 298e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 299e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 300e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>BR_TV_ALL</td> 301e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 302e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 303e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 304e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CA_TV_ALL</td> 305e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 306e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 307e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 308e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CH_TV_ALL</td> 309e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 310e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 311e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 312e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CL_TV_ALL</td> 313e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 314e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 315e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 316e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CO_TV_ALL</td> 317e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 318e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 319e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 320e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>DE_TV_ALL</td> 321e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 322e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 323e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 324e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>DK_TV_ALL</td> 325e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 326e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 327e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 328e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ES_TV_ALL</td> 329e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 330e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 331e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 332e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>FI_TV_ALL</td> 333e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 334e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 335e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 336e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>FR_TV_ALL</td> 337e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 338e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 339e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 340e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>GR_TV_ALL</td> 341e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 342e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 343e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 344e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>HK_TV_ALL</td> 345e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 346e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 347e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 348e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>HU_TV_ALL</td> 349e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 350e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 351e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 352e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ID_TV_ALL</td> 353e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 354e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 355e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 356e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IE_TV_ALL</td> 357e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 358e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 359e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 360e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IL_TV_ALL</td> 361e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 362e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 363e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 364e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IN_TV_ALL</td> 365e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 366e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 367e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 368e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IS_TV_ALL</td> 369e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 370e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 371e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 372e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IT_TV_ALL</td> 373e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 374e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 375e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 376e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KH_TV_ALL</td> 377e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 378e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 379e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <tr> 380e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KR_TV_ALL</td> 381e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code KR_TV}. This rating is for programs that are appropriate 382e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * for all ages. This program usually involves programs designed for children or families. 383e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </td> 384e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr> 385e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <tr> 386e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KR_TV_7</td> 387e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code KR_TV}. This rating is for programs that may contain 388e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * material inappropriate for children younger than 7, and parental guidance is required. 389e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </td> 390e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr> 391e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <tr> 392e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KR_TV_12</td> 393e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code KR_TV}. This rating is for programs that may contain 394e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * material inappropriate for children younger than 12, and parental guidance is required. 395e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </td> 396e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr> 397e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <tr> 398e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KR_TV_15</td> 399e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code KR_TV}. This rating is for programs that may contain 400e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * material inappropriate for children younger than 15, and parental guidance is required. 401e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr> 402e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <tr> 403e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KR_TV_19</td> 404e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code KR_TV}. This rating is for programs designed for adults 405e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * only.</td> 406e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr> 407e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 408e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MV_TV_ALL</td> 409e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 410e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 411e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 412e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MX_TV_ALL</td> 413e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 414e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 415e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 416e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MY_TV_ALL</td> 417e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 418e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 419e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 420e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>NL_TV_ALL</td> 421e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 422e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 423e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 424e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>NZ_TV_ALL</td> 425e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 426e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 427e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 428e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PE_TV_ALL</td> 429e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 430e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 431e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 432e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PH_TV_ALL</td> 433e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 434e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 435e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 436e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PL_TV_ALL</td> 437e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 438e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 439e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 440e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PT_TV_ALL</td> 441e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 442e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 443e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 444e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RO_TV_ALL</td> 445e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 446e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 447e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 448e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RU_TV_ALL</td> 449e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 450e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 451e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 452e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RS_TV_ALL</td> 453e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 454e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 455e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 456e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>SG_TV_ALL</td> 457e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 458e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 459e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 460e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>SI_TV_ALL</td> 461e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 462e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 463e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 464e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TH_TV_ALL</td> 465e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 466e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 467e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 468e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TR_TV_ALL</td> 469e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 470e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 471e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 472e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TW_TV_ALL</td> 473e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 474e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 475e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 476e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>UA_TV_ALL</td> 477e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 478e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 4795c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 4805c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_TV_Y</td> 481e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code US_TVPG}. Programs rated this are designed to be 4825c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * appropriate for all children. Whether animated or live-action, the themes and elements 4835c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * in this program are specifically designed for a very young audience, including children 4845c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * from ages 2-6. This program is not expected to frighten younger children.</td> 4855c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 4865c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 4875c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_TV_Y7</td> 488e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code US_TVPG}. Programs rated this are designed for children 4895c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * age 7 and above. It may be more appropriate for children who have acquired the 4905c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * developmental skills needed to distinguish between make-believe and reality. Themes and 4915c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * elements in this program may include mild fantasy violence or comedic violence, or may 4925c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * frighten children under the age of 7. Therefore, parents may wish to consider the 4935c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * suitability of this program for their very young children. This rating may contain 4945c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * fantasy violence (US_TVPG_FV) when programs are generally more intense or more combative 4955c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * than other programs in this category.</td> 4965c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 4975c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 4985c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_TV_G</td> 499e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code US_TVPG}. Most parents would find this program suitable 5005c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * for all ages. Although this rating does not signify a program designed specifically for 5015c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * children, most parents may let younger children watch this program unattended. It 5025c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * contains little or no violence, no strong language and little or no sexual dialogue or 5035c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * situations.</td> 5045c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 5055c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 5065c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_TV_PG</td> 507e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code US_TVPG}. Programs rated this contain material that 5085c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * parents may find unsuitable for younger children. Many parents may want to watch it with 5095c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * their younger children. The theme itself may call for parental guidance and/or the 510e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * program may contain one or more of the following: some suggestive dialogue ( 511e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * {@code US_TVPG_D}), infrequent coarse language ({@code US_TVPG_L}), some sexual 512e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * situations ({@code US_TVPG_S}), or moderate violence ({@code US_TVPG_V}).</td> 5135c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 5145c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 5155c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_TV_14</td> 516e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code US_TVPG}. Programs rated this contains some material 5175c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * that many parents would find unsuitable for children under 14 years of age. Parents are 5185c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * strongly urged to exercise greater care in monitoring this program and are cautioned 5195c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * against letting children under the age of 14 watch unattended. This program may contain 520e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * one or more of the following: intensely suggestive dialogue ({@code US_TVPG_D}), strong 521e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * coarse language ({@code US_TVPG_L}), intense sexual situations ({@code US_TVPG_S}), or 522e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * intense violence ({@code US_TVPG_V}).</td> 5235c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 5245c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 5255c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_TV_MA</td> 526e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>A rating string for {@code US_TVPG}. Programs rated TV-MA are specifically 5275c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * designed to be viewed by adults and therefore may be unsuitable for children under 17. 5285c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * This program may contain one or more of the following: crude indecent language 529e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * ({@code US_TVPG_L}), explicit sexual activity ({@code US_TVPG_S}), or graphic violence 530e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * ({@code US_TVPG_V}).</td> 5315c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 532e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 533e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>VE_TV_ALL</td> 534e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 535e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 536e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 537e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ZA_TV_ALL</td> 538e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 539e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 5405c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </table> 5415c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * 5425c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <u>System defined string for {@code subRating}</u> 5435c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <table border="0" cellspacing="0" cellpadding="0"> 5445c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 5455c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>String value</td> 5465c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Comments</td> 5475c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 548e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 549e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AM_TV_</td> 550e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 551e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 552e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 553e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AR_TV_</td> 554e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 555e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 556e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 557e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>AU_TV_</td> 558e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 559e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 560e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 561e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>BG_TV_</td> 562e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 563e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 564e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 565e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>BR_TV_</td> 566e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 567e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 568e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 569e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CA_TV_</td> 570e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 571e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 572e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 573e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CH_TV_</td> 574e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 575e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 576e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 577e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CL_TV_</td> 578e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 579e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 580e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 581e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>CO_TV_</td> 582e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 583e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 584e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 585e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>DE_TV_</td> 586e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 587e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 588e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 589e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>DK_TV_</td> 590e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 591e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 592e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 593e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ES_TV_</td> 594e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 595e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 596e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 597e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>FI_TV_</td> 598e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 599e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 600e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 601e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>FR_TV_</td> 602e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 603e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 604e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 605e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>GR_TV_</td> 606e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 607e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 608e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 609e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>HK_TV_</td> 610e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 611e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 612e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 613e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>HU_TV_</td> 614e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 615e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 616e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 617e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ID_TV_</td> 618e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 619e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 620e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 621e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IE_TV_</td> 622e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 623e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 624e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 625e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IL_TV_</td> 626e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 627e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 628e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 629e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IN_TV_</td> 630e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 631e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 632e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 633e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IS_TV_</td> 634e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 635e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 636e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 637e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>IT_TV_</td> 638e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 639e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 640e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 641e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>KH_TV_</td> 642e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 643e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 644e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 645e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MV_TV_</td> 646e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 647e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 648e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 649e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MX_TV_</td> 650e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 651e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 652e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 653e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>MY_TV_</td> 654e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 655e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 656e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 657e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>NL_TV_</td> 658e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 659e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 660e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 661e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>NZ_TV_</td> 662e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 663e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 664e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 665e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PE_TV_</td> 666e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 667e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 668e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 669e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PH_TV_</td> 670e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 671e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 672e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 673e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PL_TV_</td> 674e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 675e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 676e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 677e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>PT_TV_</td> 678e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 679e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 680e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 681e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RO_TV_</td> 682e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 683e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 684e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 685e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RU_TV_</td> 686e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 687e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 688e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 689e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>RS_TV_</td> 690e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 691e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 692e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 693e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>SG_TV_</td> 694e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 695e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 696e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 697e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>SI_TV_</td> 698e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 699e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 700e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 701e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TH_TV_</td> 702e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 703e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 704e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 705e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TR_TV_</td> 706e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 707e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 708e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 709e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>TW_TV_</td> 710e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 711e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 712e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 713e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>UA_TV_</td> 714e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 715e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 7165c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 7175c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_D</td> 7185c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Suggestive dialogue (Not used with US_TVPG_TV_MA)</td> 7195c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 7205c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 7215c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_L</td> 7225c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Coarse language</td> 7235c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 7245c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 7255c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_S</td> 7265c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Sexual content</td> 7275c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 7285c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 7295c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_V</td> 7305c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Violence</td> 7315c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 7325c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <tr> 7335c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>US_TVPG_FV</td> 7345c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * <td>Fantasy violence (exclusive to US_TVPG_TV_Y7)</td> 7355c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </tr> 736e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 737e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>VE_TV_</td> 738e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 739e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 740e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <!--tr> 741e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td>ZA_TV_</td> 742e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * <td></td> 743e6dca2cfa4eecd3a45792703b722fc3ef86e8744Sungsoo Lim * </tr--> 7445c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * </table> 745e16873467cda89d905027458e2664c759465d463Sungsoo Lim */ 7466057102dbb746593a7d59cf377c969b62e38c664Jae Seopublic final class TvContentRating { 747e16873467cda89d905027458e2664c759465d463Sungsoo Lim private static final String TAG = "TvContentRating"; 748e16873467cda89d905027458e2664c759465d463Sungsoo Lim 7495c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim /** @hide */ 7505c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim public static final Uri SYSTEM_CONTENT_RATING_SYSTEM_XML = Uri.parse( 7515c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim "android.resource://system/" + com.android.internal.R.xml.tv_content_rating_systems); 752e16873467cda89d905027458e2664c759465d463Sungsoo Lim 7535c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim // TODO: Consider to use other DELIMITER. In some countries such as India may use this delimiter 7545c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim // in the main ratings. 7555c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim private static final String DELIMITER = "/"; 756e16873467cda89d905027458e2664c759465d463Sungsoo Lim 7575c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim private final String mDomain; 7585c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim private final String mCountryCode; 7595c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim private final String mRatingSystem; 7605c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim private final String mRating; 7615c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim private final String[] mSubRatings; 762e16873467cda89d905027458e2664c759465d463Sungsoo Lim 763e16873467cda89d905027458e2664c759465d463Sungsoo Lim /** 7645c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * Creates a TvContentRating object. 7655c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * 7665c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @param domain The domain name. 7675c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @param countryCode The country code in ISO 3166-2 format or {@code null}. 7685c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @param ratingSystem The rating system id. 7695c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @param rating The content rating string. 7705c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @param subRatings The string array of sub-ratings. 7715c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @return A TvContentRating object, or null if creation failed. 772e16873467cda89d905027458e2664c759465d463Sungsoo Lim */ 7735c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim public static TvContentRating createRating(String domain, String countryCode, 7745c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim String ratingSystem, String rating, String... subRatings) { 7755c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim if (TextUtils.isEmpty(domain)) { 7765c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim throw new IllegalArgumentException("domain cannot be empty"); 7775c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 7785c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim if (TextUtils.isEmpty(rating)) { 7795c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim throw new IllegalArgumentException("rating cannot be empty"); 7805c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 7815c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim return new TvContentRating(domain, countryCode, ratingSystem, rating, subRatings); 782e16873467cda89d905027458e2664c759465d463Sungsoo Lim } 783e16873467cda89d905027458e2664c759465d463Sungsoo Lim 784e16873467cda89d905027458e2664c759465d463Sungsoo Lim /** 7855c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * Recovers a TvContentRating from a String that was previously created with 7865c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * {@link #flattenToString}. 787e16873467cda89d905027458e2664c759465d463Sungsoo Lim * 7885c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @param ratingString The String that was returned by flattenToString(). 7895c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @return a new TvContentRating containing the domain, countryCode, rating system, rating and 7905c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * sub-ratings information was encoded in {@code ratingString}. 7915c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * @see #flattenToString 792e16873467cda89d905027458e2664c759465d463Sungsoo Lim */ 7935c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim public static TvContentRating unflattenFromString(String ratingString) { 7945c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim if (TextUtils.isEmpty(ratingString)) { 7955c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim throw new IllegalArgumentException("ratingString cannot be empty"); 7965c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 7975c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim String[] strs = ratingString.split(DELIMITER); 7985c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim if (strs.length < 4) { 7995c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim throw new IllegalArgumentException("Invalid rating string: " + ratingString); 8005c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 8015c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim if (strs.length > 4) { 8025c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim String[] subRatings = new String[strs.length - 4]; 8035c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim System.arraycopy(strs, 4, subRatings, 0, subRatings.length); 8045c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim return new TvContentRating(strs[0], strs[1], strs[2], strs[3], subRatings); 8055c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 8065c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim return new TvContentRating(strs[0], strs[1], strs[2], strs[3], null); 807e16873467cda89d905027458e2664c759465d463Sungsoo Lim } 808e16873467cda89d905027458e2664c759465d463Sungsoo Lim 809e16873467cda89d905027458e2664c759465d463Sungsoo Lim /** 810e16873467cda89d905027458e2664c759465d463Sungsoo Lim * Constructs a TvContentRating object from a given rating and sub-rating constants. 811e16873467cda89d905027458e2664c759465d463Sungsoo Lim * 812e16873467cda89d905027458e2664c759465d463Sungsoo Lim * @param rating The rating constant defined in this class. 813e16873467cda89d905027458e2664c759465d463Sungsoo Lim * @param subRatings The String array of sub-rating constants defined in this class. 814e16873467cda89d905027458e2664c759465d463Sungsoo Lim */ 8155c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim private TvContentRating(String domain, String countryCode, 8165c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim String ratingSystem, String rating, String[] subRatings) { 8175c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim mDomain = domain; 8185c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim mCountryCode = countryCode; 8195c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim mRatingSystem = ratingSystem; 8206057102dbb746593a7d59cf377c969b62e38c664Jae Seo mRating = rating; 8216057102dbb746593a7d59cf377c969b62e38c664Jae Seo mSubRatings = subRatings; 822e16873467cda89d905027458e2664c759465d463Sungsoo Lim } 823e16873467cda89d905027458e2664c759465d463Sungsoo Lim 824e16873467cda89d905027458e2664c759465d463Sungsoo Lim /** 8255c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * Returns the domain. 8265c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim */ 8275c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim public String getDomain() { 8285c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim return mDomain; 8295c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 8305c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim 8315c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim /** 8325c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * Returns the country code in ISO 3166-2 format or {@code null}. 8335c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim */ 8345c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim public String getCountry() { 8355c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim return mCountryCode; 8365c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 8375c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim 8385c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim /** 8395c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * Returns the rating system id. 8405c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim */ 8415c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim public String getRatingSystem() { 8425c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim return mRatingSystem; 8435c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim } 8445c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim 8455c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim /** 8465c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * Returns the main rating. 8476057102dbb746593a7d59cf377c969b62e38c664Jae Seo */ 8486057102dbb746593a7d59cf377c969b62e38c664Jae Seo public String getMainRating() { 8496057102dbb746593a7d59cf377c969b62e38c664Jae Seo return mRating; 8506057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 8516057102dbb746593a7d59cf377c969b62e38c664Jae Seo 8526057102dbb746593a7d59cf377c969b62e38c664Jae Seo /** 8535c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim * Returns the unmodifiable {@code List} of sub-rating strings. 8546057102dbb746593a7d59cf377c969b62e38c664Jae Seo */ 8556057102dbb746593a7d59cf377c969b62e38c664Jae Seo public List<String> getSubRatings() { 8566057102dbb746593a7d59cf377c969b62e38c664Jae Seo if (mSubRatings == null) { 8576057102dbb746593a7d59cf377c969b62e38c664Jae Seo return null; 8586057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 8596057102dbb746593a7d59cf377c969b62e38c664Jae Seo return Collections.unmodifiableList(Arrays.asList(mSubRatings)); 8606057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 8616057102dbb746593a7d59cf377c969b62e38c664Jae Seo 8626057102dbb746593a7d59cf377c969b62e38c664Jae Seo /** 8636057102dbb746593a7d59cf377c969b62e38c664Jae Seo * Returns a String that unambiguously describes both the rating and sub-rating information 8646057102dbb746593a7d59cf377c969b62e38c664Jae Seo * contained in the TvContentRating. You can later recover the TvContentRating from this string 8656057102dbb746593a7d59cf377c969b62e38c664Jae Seo * through {@link #unflattenFromString}. 8666057102dbb746593a7d59cf377c969b62e38c664Jae Seo * 8676057102dbb746593a7d59cf377c969b62e38c664Jae Seo * @return a new String holding rating/sub-rating information, which can later be stored in the 8686057102dbb746593a7d59cf377c969b62e38c664Jae Seo * database and settings. 8696057102dbb746593a7d59cf377c969b62e38c664Jae Seo * @see #unflattenFromString 8706057102dbb746593a7d59cf377c969b62e38c664Jae Seo */ 8716057102dbb746593a7d59cf377c969b62e38c664Jae Seo public String flattenToString() { 8725c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim StringBuilder builder = new StringBuilder(); 8735c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim builder.append(mDomain); 8745c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim builder.append(DELIMITER); 8755c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim builder.append(mCountryCode); 8765c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim builder.append(DELIMITER); 8775c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim builder.append(mRatingSystem); 8785c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim builder.append(DELIMITER); 8795c5b83fcd58d21c9ab7ac986bf84f604ec5bb4b5Sungsoo Lim builder.append(mRating); 8806057102dbb746593a7d59cf377c969b62e38c664Jae Seo if (mSubRatings != null) { 8816057102dbb746593a7d59cf377c969b62e38c664Jae Seo for (String subRating : mSubRatings) { 8826057102dbb746593a7d59cf377c969b62e38c664Jae Seo builder.append(DELIMITER); 8836057102dbb746593a7d59cf377c969b62e38c664Jae Seo builder.append(subRating); 8846057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 8856057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 8866057102dbb746593a7d59cf377c969b62e38c664Jae Seo return builder.toString(); 8876057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 8886057102dbb746593a7d59cf377c969b62e38c664Jae Seo 8896057102dbb746593a7d59cf377c969b62e38c664Jae Seo /** 8906057102dbb746593a7d59cf377c969b62e38c664Jae Seo * Returns true if this rating has the same main rating as the specified rating and when this 8916057102dbb746593a7d59cf377c969b62e38c664Jae Seo * rating's sub-ratings contain the other's. 8926057102dbb746593a7d59cf377c969b62e38c664Jae Seo * <p> 8936057102dbb746593a7d59cf377c969b62e38c664Jae Seo * For example, a TvContentRating object that represents TV-PG with S(Sexual content) and 8946057102dbb746593a7d59cf377c969b62e38c664Jae Seo * V(Violence) contains TV-PG, TV-PG/S, TV-PG/V and itself. 8956057102dbb746593a7d59cf377c969b62e38c664Jae Seo * </p> 8966057102dbb746593a7d59cf377c969b62e38c664Jae Seo * 8976057102dbb746593a7d59cf377c969b62e38c664Jae Seo * @param rating The {@link TvContentRating} to check. 8986057102dbb746593a7d59cf377c969b62e38c664Jae Seo * @return {@code true} if this object contains {@code rating}, {@code false} otherwise. 8996057102dbb746593a7d59cf377c969b62e38c664Jae Seo * @hide 900e16873467cda89d905027458e2664c759465d463Sungsoo Lim */ 9016057102dbb746593a7d59cf377c969b62e38c664Jae Seo @SystemApi 9026057102dbb746593a7d59cf377c969b62e38c664Jae Seo public final boolean contains(TvContentRating rating) { 9036057102dbb746593a7d59cf377c969b62e38c664Jae Seo if (rating == null) { 9046057102dbb746593a7d59cf377c969b62e38c664Jae Seo throw new IllegalArgumentException("rating cannot be null"); 9056057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 9066057102dbb746593a7d59cf377c969b62e38c664Jae Seo if (!rating.getMainRating().equals(mRating)) { 9076057102dbb746593a7d59cf377c969b62e38c664Jae Seo return false; 9086057102dbb746593a7d59cf377c969b62e38c664Jae Seo } 9096057102dbb746593a7d59cf377c969b62e38c664Jae Seo List<String> subRatings = getSubRatings(); 9106057102dbb746593a7d59cf377c969b62e38c664Jae Seo List<String> subRatingsOther = rating.getSubRatings(); 9116057102dbb746593a7d59cf377c969b62e38c664Jae Seo if (subRatings == null && subRatingsOther == null) { 9126057102dbb746593a7d59cf377c969b62e38c664Jae Seo return true; 9136057102dbb746593a7d59cf377c969b62e38c664Jae Seo } else if (subRatings == null && subRatingsOther != null) { 9146057102dbb746593a7d59cf377c969b62e38c664Jae Seo return false; 9156057102dbb746593a7d59cf377c969b62e38c664Jae Seo } else if (subRatings != null && subRatingsOther == null) { 9166057102dbb746593a7d59cf377c969b62e38c664Jae Seo return true; 9176057102dbb746593a7d59cf377c969b62e38c664Jae Seo } else { 9186057102dbb746593a7d59cf377c969b62e38c664Jae Seo return subRatings.containsAll(subRatingsOther); 919e16873467cda89d905027458e2664c759465d463Sungsoo Lim } 920e16873467cda89d905027458e2664c759465d463Sungsoo Lim } 921e16873467cda89d905027458e2664c759465d463Sungsoo Lim} 922