The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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.