Skip to content

Object Class Tests

Domain Lookup Validation

Test group: [stdRdapDomainLookupValidation]

The following steps should be used to test that a domain data structure is valid:

  1. Test case -12200: The domain data structure must be a syntactically valid JSON object.
    {
      "code": -12200,
      "value": "<domain structure>",
      "message": "The domain structure is not syntactically valid."
    }
    
  2. Test case -12201: The name of every name/value pairs shall be any of: objectClassName, handle, ldhName, unicodeName, variants, nameservers, secureDNS, entities, status, publicIds, remarks, links, port43, events, notices or rdapConformance.
    {
      "code": -12201,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair is not of: objectClassName, handle, ldhName, unicodeName, variants, nameservers, secureDNS, entities, status, publicIds, remarks, links, port43, events, notices or rdapConformance."
    }
    
  3. Test case -12202: The JSON name/values of objectClassName, handle, ldhName, unicodeName, variants, nameservers, secureDNS, entities, status, publicIds, remarks, links, port43, events, notices or rdapConformance shall appear only once.
    {
      "code": -12202,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair of a domain structure was found more than once."
    }
    
  4. Test case -12203: For the JSON name objectClassName, the value shall be "domain".
    {
      "code": -12203,
      "value": "<name/value pair>",
      "message": "The JSON value is not 'domain'."
    }
    
  5. Test case -12204: If the JSON name handle exists, the value shall be a JSON string data type.
    {
      "code": -12204,
      "value": "<name/value pair>",
      "message": "The JSON value is not a string."
    }
    
  6. Test case -12205: If the JSON name ldhName, the value shall pass the test LDH name [stdRdapLdhNameValidation] defined in this document.
    {
      "code": -12205,
      "value": "<name/value pair>",
      "message": " The value for the JSON name value does not pass LDH name [stdRdapLdhNameValidation]."
    }
    
  7. Test case -12206: If the JSON name unicodeName exists, the value shall pass the test Unicode name [stdRdapUnicodeNameValidation] defined in this document.
    {
      "code": -12206,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Unicode name [stdRdapUnicodeNameValidation]."
    }
    
  8. Test case -12207: If the JSON name variants exists, the value shall pass the test Variants validation [stdRdapVariantsValidation] defined in this document.
    {
      "code": -12207,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Variants validation [stdRdapVariantsValidation]."
    }
    
  9. Test case -12208: If the JSON name nameservers exists, the value shall pass the test Nameserver lookup validation [stdRdapNameserverLookupValidation] defined in this document.
    {
      "code": -12208,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Nameserver lookup validation [stdRdapNameserverLookupValidation]."
    }
    
  10. Test case -12209: If the JSON name secureDNS exists, the value shall pass the test Secure DNS validation [stdRdapSecureDnsValidation] defined in this document.
    {
      "code": -12209,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Secure DNS validation [stdRdapSecureDnsValidation]."
    }
    
  11. Test case -12210: If the JSON name entities exists, the value shall pass the test Entities validation [stdRdapEntitiesValidation] defined in this document.
    {
      "code": -12210,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Entities validation [stdRdapEntitiesValidation]."
    }
    
  12. Test case -12211: If the JSON name status exists, the value shall pass the test Status validation [stdRdapStatusValidation] defined in this document.
    {
      "code": -12211,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Status validation [stdRdapStatusValidation]."
    }
    
  13. Test case -12212: If the JSON name publicIds exists, the value shall pass the test Public IDs validation [stdRdapPublicIdsValidation] defined in this document.
    {
      "code": -12212,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Public IDs validation [stdRdapPublicIdsValidation]."
    }
    
  14. Test case -12213: If the JSON name remarks exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12213,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  15. Test case -12214: If the JSON name links exists, the value shall pass the test Links validation [stdRdapLinksValidation] defined in this document.
    {
      "code": -12214,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Links validation [stdRdapLinksValidation]."
    }
    
  16. Test case -12215: If the JSON name port43 exists, the value shall pass the test Port 43 WHOIS Server [stdRdapPort43WhoisServerValidation] defined in this document.
    {
      "code": -12215,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Port 43 WHOIS Server [stdRdapPort43WhoisServerValidation]."
    }
    
  17. Test case -12216: If the JSON name events exists, the value shall pass the test Events Validation [stdRdapEventsValidation] defined in this document.
    {
      "code": -12216,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Events Validation [stdRdapEventsValidation]."
    }
    
  18. Test case -12217: If the JSON name notices exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12217,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  19. Test case -12218: If the JSON name notices exists and the domain object is not the topmost JSON object.
    {
      "code": -12218,
      "value": "<name/value pair>",
      "message": "The value for the JSON name notices exists but domain object is not the topmost JSON object."
    }
    
  20. Test case -12219: If the JSON name rdapConformance exists, the value shall pass the test RDAP Conformance validation [stdRdapConformanceValidation] defined in this document.
    {
      "code": -12219,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass RDAP Conformance validation [stdRdapConformanceValidation]."
    }
    

Entity lookup validation

Test group: [stdRdapEntityLookupValidation]

The following steps should be used to test that an entity data structure is valid:

  1. Test case -12300: The entity data structure must be a syntactically valid JSON object.
    {
      "code": -12300,
      "value": "<entity structure>",
      "message": "The entity structure is not syntactically valid."
    }
    
  2. Test case -12301: The name of every name/value pairs shall be any of: objectClassName, handle, vcardArray, roles, publicIds, entities, remarks, links, events, asEventActor, status, port43, notices or rdapConformance.
    {
      "code": -12301,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair is not of: objectClassName, handle, vcardArray, roles, publicIds, entities, remarks, links, events, asEventActor, status, port43, notices or rdapConformance."
    }
    
  3. Test case -12302: The JSON name/values of objectClassName, handle, vcardArray, roles, publicIds, entities, remarks, links, events, asEventActor, status, port43, notices or rdapConformance shall exist only once.
    {
    "code": -12302,
    "value": "<name/value pair>",
    "message": "The name in the name/value pair of a domain structure was found more than once."
    }
    
  4. Test case -12303: For the JSON name objectClassName, the value shall be "entity".
    {
      "code": -12303,
      "value": "<name/value pair>",
      "message": "The JSON value is not 'entity'."
    }
    
  5. Test case -12304: If the JSON name handle exists, the value shall be a JSON string data type.
    {
      "code": -12304,
      "value": "<name/value pair>",
      "message": "The JSON value is not a string."
    }
    
  6. Test case -12305: If the JSON name title vcardArray exists, the value shall be syntactically valid.
    {
      "code": -12305,
      "value": "<name/value pair>",
      "message": " The value for the JSON name value is not a syntactically valid vcardArray."
    }
    
  7. Test case -12306: If the JSON name roles exists, the value shall pass the test Roles validation [stdRdapRolesValidation] defined in this document.
    {
      "code": -12306,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Roles validation [stdRdapRolesValidation]."
    }
    
  8. Test case -12307: If the JSON name publicIds exists, the value shall pass the test Public IDs validation [stdRdapPublicIdsValidation] defined in this document.
    {
      "code": -12307,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Public IDs validation [stdRdapPublicIdsValidation]."
    }
    
  9. Test case -12308: If the JSON name entities exists, the value shall pass the test Entities validation [stdRdapEntitiesValidation] defined in this document.
    {
      "code": -12308,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Entities validation [stdRdapEntitiesValidation]."
    }
    
  10. Test case -12309: If the JSON name remarks exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12309,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  11. Test case -12310: If the JSON name links exists, the value shall pass the test Links validation [stdRdapLinksValidation] defined in this document.
    {
      "code": -12310,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Links validation [stdRdapLinksValidation]."
    }
    
  12. Test case -12311: If the JSON name events exists, the value shall pass the test Events Validation [stdRdapEventsValidation] defined in this document.
    {
      "code": -12311,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Events Validation [stdRdapEventsValidation]."
    }
    
  13. Test case -12312: If the JSON name asEventActor exists, the value shall pass the test asEventActor Validation [stdRdapAsEventActorValidation] defined in this document.
    {
      "code": -12312,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass asEventActor Validation [stdRdapAsEventActorValidation]."
    }
    
  14. Test case -12313: If the JSON name status exists, the value shall pass the test Status validation [stdRdapStatusValidation] defined in this document.
    {
      "code": -12313,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Status validation [stdRdapStatusValidation]."
    }
    
  15. Test case -12314: If the JSON name port43 exists, the value shall pass the test Port 43 WHOIS Server [stdRdapPort43WhoisServerValidation] defined in this document.
    {
      "code": -12314,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Port 43 WHOIS Server [stdRdapPort43WhoisServerValidation]."
    }
    
  16. Test case -12315: If the JSON name notices exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12315,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  17. Test case -12316: If the JSON name notices exists and the entity object is not the topmost JSON object.
    {
      "code": -12316,
      "value": "<name/value pair>",
      "message": "The value for the JSON name notices exists but entity object is not the topmost JSON object."
    }
    
  18. Test case -12317: If the JSON name rdapConformance exists, the value shall pass the test RDAP Conformance validation [stdRdapConformanceValidation] defined in this document.
    {
      "code": -12317,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass RDAP Conformance validation [stdRdapConformanceValidation]."
    }
    

Nameserver lookup validation

Test group: [stdRdapNameserverLookupValidation]

The following steps should be used to test that a nameserver data structure is valid:

  1. Test case -12400: The nameserver data structure must be a syntactically valid JSON object.
    {
        "code": -12400,
        "value": "<nameserver structure>",
        "message": "The nameserver structure is not syntactically valid."
    }
    
  2. Test case -12401: The name of every name/value pairs shall be any of: objectClassName, handle, ldhName, unicodeName, ipAddresses, entities, status, remarks, links, port43, events, notices or rdapConformance.
    {
        "code": -12401,
        "value": "<name/value pair>",
        "message": "The name in the name/value pair is not of: objectClassName, handle, ldhName, unicodeName, ipAddresses, entities, status, remarks, links, port43, events, notices or rdapConformance."
    }
    
  3. Test case -12402: The JSON name/values of objectClassName, handle, ldhName, unicodeName, ipAddresses, entities, status, remarks, links, port43, events, notices or rdapConformance shall exist only once.
    {
      "code": -12402,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair of a link structure was found more than once."
    }
    
  4. Test case -12403: For the JSON name objectClassName, the value shall be "nameserver".
    {
      "code": -12403,
      "value": "<name/value pair>",
      "message": "The JSON value is not 'nameserver'."
    }
    
  5. Test case -12404: If the JSON name handle exists, the value shall be a JSON string data type.
    {
      "code": -12404,
      "value": "<name/value pair>",
      "message": "The JSON value is not a string."
    }
    
  6. Test case -12405: If the JSON name ldhName exists, the value shall pass the test LDH name [stdRdapLdhNameValidation] defined in this document.
    {
      "code": -12405,
      "value": "<name/value pair>",
      "message": " The value for the JSON name value does not pass LDH name [stdRdapLdhNameValidation]."
    }
    
  7. Test case -12406: If the JSON name unicodeName exists, the value shall pass the test Unicode name [stdRdapUnicodeNameValidation] defined in this document.
    {
      "code": -12406,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Unicode name [stdRdapUnicodeNameValidation]."
    }
    
  8. Test case -12407: If the JSON name ipAddresses exists, the value shall pass the test IP Addresses Validation [stdRdapIpAddressesValidation] defined in this document.
    {
      "code": -12407,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass IP Addresses Validation [stdRdapIpAddressesValidation]."
    }
    
  9. Test case -12408: If the JSON name entities exists, the value shall pass the test Entities validation [stdRdapEntitiesValidation] defined in this document.
    {
      "code": -12408,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Entities validation [stdRdapEntitiesValidation]."
    }
    
  10. Test case -12409: If the JSON name status exists, the value shall pass the test Status validation [stdRdapStatusValidation] defined in this document.
    {
      "code": -12409,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Status validation [stdRdapStatusValidation]."
    }
    
  11. Test case -12410: If the JSON name remarks exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12410,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  12. Test case -12411: If the JSON name links exists, the value shall pass the test Links validation [stdRdapLinksValidation] defined in this document.
    {
    "code": -12411,
    "value": "<name/value pair>",
    "message": "The value for the JSON name value does not pass Links validation [stdRdapLinksValidation]."
    }
    
  13. Test case -12412: If the JSON name port43 exists, the value shall pass the test Port 43 WHOIS Server [stdRdapPort43WhoisServerValidation] defined in this document.
    {
      "code": -12412,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Port 43 WHOIS Server [stdRdapPort43WhoisServerValidation]."
    }
    
  14. Test case -12413: If the JSON name events exists, the value shall pass the test Events Validation [stdRdapEventsValidation] defined in this document.
    {
      "code": -12413,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Events Validation [stdRdapEventsValidation]."
    }
    
  15. Test case -12414: If the JSON name notices exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
    "code": -12414,
    "value": "<name/value pair>",
    "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  16. Test case -12415: If the JSON name notices exists and the nameserver object is not the topmost JSON object.
    {
    "code": -12415,
    "value": "<name/value pair>",
    "message": "The value for the JSON name notices exists but nameserver object is not the topmost JSON object."
    }
    
  17. Test case -12416: If the JSON name rdapConformance exists, the value shall pass the test RDAP Conformance validation [stdRdapConformanceValidation] defined in this document.
    {
      "code": -12416,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass RDAP Conformance validation [stdRdapConformanceValidation]."
    }
    

Help validation

Test group:[stdRdapHelpValidation]

The following steps should be used to test that a help data structure is valid:

  1. Test case -12500: The help data structure must be a syntactically valid JSON object.
    {
      "code": -12500,
      "value": "<help structure>",
      "message": "The help structure is not syntactically valid."
    }
    
  2. Test case -12501: The name of every name/value pairs shall be notices or rdapConformance.
    {
      "code": -12501,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair is not of: notices or rdapConformance."
    }
    
  3. Test case -12502: The JSON name/values of notices or rdapConformance shall exist only once.
    {
      "code": -12502,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair of a link structure was found more than once."
    }
    
  4. Test case -12503: If the JSON name notices exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12503,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  5. Test case -12504: If the JSON name rdapConformance exists, the value shall pass the test RDAP Conformance validation [stdRdapConformanceValidation] defined in this document.
    {
      "code": -12504,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass RDAP Conformance validation [stdRdapConformanceValidation]."
    }
    

Nameservers search validation

Test group: [stdRdapNameserversSearchValidation]

The following steps should be used to test that a nameserverSearchResults data structure is valid:

  1. Test case -12600: The nameserverSearchResults data structure must be a syntactically valid JSON object.
    {
      "code": -12600,
      "value": "<nameserver structure>",
      "message": "The nameserver structure is not syntactically valid."
    }
    
  2. Test case -12601: The name of every name/value pairs shall be any of: nameserverSearchResults, remarks, events, notices or rdapConformance.
    {
      "code": -12601,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair is not of: nameserverSearchResults, remarks, events, notices or rdapConformance."
    }
    
  3. Test case -12602: The JSON name/values of nameserverSearchResults, remarks, events, notices or rdapConformance shall exist only once.
    {
      "code": -12602,
      "value": "<name/value pair>",
      "message": "The name in the name/value pair of a link structure was found more than once."
    }
    
  4. Test case -12603: The nameserverSearchResults data structure must be a syntactically valid JSON array.
    {
      "code": -12603,
      "value": "<nameserverSearchResults structure>",
      "message": "The nameserverSearchResults structure is not syntactically valid."
    }
    
  5. For every object (i.e. nameserver) of the JSON array, verify that the nameserverSearchResults structure complies with:
    1. Test case -12604: The object (i.e. nameserver) shall pass the Nameserver lookup validation [stdRdapNameserverLookupValidation] test.
      {
        "code": -12604,
        "value": "<nameserver object>",
        "message": "The nameserver object does not pass Nameserver lookup validation [stdRdapNameserverLookupValidation]."
      }
      
  6. Test case -12605: If the JSON name remarks exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12605,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  7. Test case -12606: If the JSON name events exists, the value shall pass the test Events Validation [stdRdapEventsValidation] defined in this document.
    {
      "code": -12606,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Events Validation [stdRdapEventsValidation]."
    }
    
  8. Test case -12607: If the JSON name notices exists, the value shall pass the test Notices and Remarks Validation [stdRdapNoticesRemarksValidation] defined in this document.
    {
      "code": -12607,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass Notices and Remarks Validation [stdRdapNoticesRemarksValidation]."
    }
    
  9. Test case -12608: If the JSON name notices exists and the object is not the topmost JSON object.
    {
      "code": -12608,
      "value": "<name/value pair>",
      "message": "The value for the JSON name notices exists but object is not the topmost JSON object."
    } 
    
  10. Test case -12609: If the JSON name rdapConformance exists, the value shall pass the test RDAP Conformance validation [stdRdapConformanceValidation] defined in this document.
    {
      "code": -12609,
      "value": "<name/value pair>",
      "message": "The value for the JSON name value does not pass RDAP Conformance validation [stdRdapConformanceValidation]."
    }
    
  11. Test case -12610: The nameserverSearchResults value must exist.
    {
      "code": -12610,
      "value": "<response>",
      "message": "The nameserverSearchResults structure is required."
    }