Scroll to navigation

Net::EPP::Frame::ObjectSpec(3pm) User Contributed Perl Documentation Net::EPP::Frame::ObjectSpec(3pm)

NAME

Net::EPP::Frame::ObjectSpec - metadata about EPP objects and extensions.

SYNOPSIS

        use Net::EPP::Frame;
        use strict;
        # create an EPP frame:
        my $check = Net::EPP::Frame::Command::Check->new;
        # get the spec:
        my @spec = Net::EPP::Frame::ObjectSpec->spec('domain');
        # create an object:
        my $domain = $check->addObject(@spec);
        # set the attributes:
        my $name = $check->createElement('domain:name');
        $name->addText('example.tld');
        # assemble the frame:
        $domain->appendChild($name);
        $check->getCommandNode->appendChild($domain);
        print $check->toString;

DESCRIPTION

"Net::EPP::Frame::ObjectSpec" is a simple module designed to provide easy access to metadata for the objects and extensions defined in EPP and various extensions.

METHODS

xmlns()

    my $xmlns = Net::EPP::Frame::ObjectSpec->xmlns($type);

Returns a string containing the XML namespace URI of the thing identified by $type, or "undef" if $type is unknown.

See below for possible values of $type.

spec()

        my @spec = Net::EPP::Frame::ObjectSpec->spec($type);

This function returns an array containing metadata for the given object type. If no metadata is registered then the function returns "undef".

The returned array contains three members:

        @spec = (
                $type,
                $xmlns,
                $schemaLocation, # (deprecated)
        );

$type is the same as the supplied argument, while $xmlns is the XML namespace URI for the given type. The third argument is suitable for inclusion in a "schemaLocation" attribute, but is now deprecated and will be "undef" for any value of $type other than "domain", "host" "contact", "secDNS" and "rgp".

THE $type ARGUMENT

The $type argument to xmlns() and spec() identifies the object or extension desired. Possible values are:

OBJECT MAPPINGS

  • "domain", for domain names;
  • "host", for host objects;
  • "contact", for contact objects;
  • "org", for organization object.

EXTENSIONS

  • "secDNS", for the DNSSEC extension;
  • "rgp", for Registry Grace Period extension;
  • "ttl", for the TTL extension;
  • "maintenance", for the Maintenance extension;
  • "secure-authinfo-transfer", for the Secure authInfo extension;
  • "b-dn", for the bundled domain names extension;
  • "unhandled-namespaces", for the unhandled namespaces extension;
  • "loginSec", for the Login Security extension;
  • "fee", for the Fee extension;
  • "changePoll", for the Change Poll extension;
  • "orgext", for the Organization extension;
  • "allocationToken", for the Allocation Token extension;
  • "launch", for the Launch extension;
  • "keyrelay", for the Key Relay extension;
  • "ttl", for the TTL extension.

COPYRIGHT

This module is (c) 2008 - 2023 CentralNic Ltd and 2024 Gavin Brown. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2024-04-27 perl v5.38.2