------------------------------------------------------- -- -- -- ------------------------------------------------------- -- (c) 1996 NeuStar, Inc. The Work is subject to the terms of the GNU -- General Public License (the "GPL"), a copy of which may be found at -- ftp://prep.ai.mit.edu/pub/gnu/GPL. Any use of this Work is subject to -- the terms of the GPL. The "Work" covered by the GPL by operation of -- this notice and license is this document and any and all modifications -- to or derivatives of this document. Where the words "Program," -- "software," "source code," "code," or "files" are used in the GPL, -- users understand and agree that the "Work" as defined here is substituted -- for purposes of this notice and license. -- -- May 28, 2010 -- ASN.1 for NPAC SMS Release 3.4.0. -- Based upon IIS v3.4.0. -- Updated to include change orders: -- NANC 355 NANC 408, NANC 421, NANC 433, NANC 434, NANC 443. -- -- LNP ASN.1 Object Identifier Definitions --#include "smi.asn" LNP-OIDS {iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) lockheedMartin(103) cis(7) npac(0) iis(0) oids(0)} DEFINITIONS ::= BEGIN -- EXPORTS all definitions lnp-npac OBJECT IDENTIFIER ::= {iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) lockheedMartin(103) cis(7) npac(0)} lnp-npac-iis OBJECT IDENTIFIER ::= {lnp-npac iis(0)} -- If additional MIB specializations are needed (e.g. regional or vendor -- specific implementations) object identifiers can be added at the npac level (e.g. -- {lnp-npac special(1)}, etc.) -- LNP NPAC SMS categories of Interoperable Interface Specification (IIS) -- information objects lnp-attribute OBJECT IDENTIFIER ::= {lnp-npac-iis attribute(2) } lnp-objectClass OBJECT IDENTIFIER ::= {lnp-npac-iis objectClass(3) } lnp-nameBinding OBJECT IDENTIFIER ::= {lnp-npac-iis nameBinding(4) } lnp-notification OBJECT IDENTIFIER ::= {lnp-npac-iis notification(5) } lnp-action OBJECT IDENTIFIER ::= {lnp-npac-iis action(6) } lnp-package OBJECT IDENTIFIER ::= {lnp-npac-iis package(7) } lnp-parameter OBJECT IDENTIFIER ::= {lnp-npac-iis parameter(8) } END -- LNP-OIDS -- LNP General ASN.1 Definitions LNP-ASN1 {iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) lockheed(103) cis(7) npac(0) iis(0) asn1(1)} DEFINITIONS IMPLICIT TAGS ::= BEGIN -- EXPORTS everything IMPORTS -- CMIP ObjectClass, ObjectInstance FROM CMIP-1 {joint-iso-ccitt ms(9) cmip(1) modules(0) protocol(3)} -- DMI AttributeValueChangeInfo, ObjectInfo FROM Notification-ASN1Module {joint-iso-ccitt ms(9) smi(3) part2(2) asn1Module(2) 2} AdditionalInformation FROM Attribute-ASN1Module {joint-iso-ccitt ms(9) smi(3) part2(2) asn1Module(2) 1}; ActivateAction ::= SubscriptionVersionAction ActionResultsStatus ::= ResultsStatus ActivateReply ::= SubscriptionVersionActionReply ActivateReplyWithErrorCode ::= SubscriptionVersionActionReplyWithErrorCode AddressInformation ::= SEQUENCE { line1 GraphicString40, line2 GraphicString40, city GraphicString20, state GraphicString(SIZE(2)), zip GraphicString(SIZE(9)), province GraphicString(SIZE(2)), country GraphicString20, contactPhone PhoneNumber, contact GraphicString40, contactFax PhoneNumber, contactPager PhoneNumber, contactPagerPIN DigitString, -- value should be no more than 10 digits contactE-mail GraphicString60 } ApplicationLevelHeartBeat ::= SEQUENCE { sequence-number [0] INTEGER, creation-ts [1] GeneralizedTime } AssociationFunction ::= SEQUENCE { soaUnits SoaUnits, lsmsUnits LSMSUnits } AuditAttributes ::= CHOICE { specific-audit [0] SEQUENCE { lidb-data BOOLEAN, class-data BOOLEAN, cnam-data BOOLEAN, isvm-data BOOLEAN, lrn-data BOOLEAN, wsmsc-data BOOLEAN OPTIONAL -- Optional for backward compatability }, all-data [1] NULL } AuditDiscrepancyRpt ::= SEQUENCE { tn PhoneNumber, version-id SubscriptionVersionId, lsms-service-prov-id ServiceProvId, failure-reason AuditFailureData, access-control LnpAccessControl } AuditDiscrepancyRptRecovery ::= SEQUENCE { tn PhoneNumber, version-id SubscriptionVersionId, lsms-service-prov-id ServiceProvId, failure-reason AuditFailureData } AuditFailureData ::= CHOICE { tn-version-missing-NPAC [0] NULL, tn-version-missing-LSMS [1] NULL, mismatch-data [2] MismatchAttributes } AuditId ::= LnpKey AuditName ::= GraphicString40 AuditNumberOfTNs ::= INTEGER AuditNumberOfTNsComplete ::= INTEGER AuditResults ::= SEQUENCE { status [0] AuditResultStatus, failed-service-prov-list [1] Failed-SP-List OPTIONAL, number-of-discrepancies [2] INTEGER, time-of-completion [3] GeneralizedTime, access-control [4] LnpAccessControl } AuditResultsRecovery ::= SEQUENCE { status [0] AuditResultStatus, failed-service-prov-list [1] Failed-SP-List OPTIONAL, number-of-discrepancies [2] INTEGER, time-of-completion [3] GeneralizedTime } AuditResultStatus ::= ENUMERATED { success (0), failed-due-to-discrepancies (1), failed-on-local-sms (2), no-audit-performed (3) } AuditServiceProvIdRange ::= CHOICE { allServiceProvs [0] NULL, serviceProv [1] ServiceProvName -- ServiceProvId value allowed } AuditStatus ::= ENUMERATED { in-progress (0), cancelled (1), complete (2) } AuditTN-ActivationRange ::= TimeRange -- swim value NOT applicable BillingId ::= CHOICE { value [0] GraphicString4, -- variable 1-4 alphanumeric characters no-value-needed [1] NULL } BlockDownloadCriteria ::= CHOICE { time-range [0] TimeRange, -- swim value NOT applicable block-npa-nxx-x [1] NPA-NXX-X, block-npa-nxx-x-range [2] NPA-NXX-X-Range } BlockDownloadData ::= SET OF SEQUENCE { block-id [0] BlockId, block-npa-nxx-x [1] NPA-NXX-X OPTIONAL, block-holder-sp [2] ServiceProvId OPTIONAL, block-activation-timestamp [3] GeneralizedTime OPTIONAL, block-lrn [4] LRN OPTIONAL, block-class-dpc [5] EXPLICIT DPC OPTIONAL, block-class-ssn [6] EXPLICIT SSN OPTIONAL, block-lidb-dpc [7] EXPLICIT DPC OPTIONAL, block-lidb-ssn [8] EXPLICIT SSN OPTIONAL, block-isvm-dpc [9] EXPLICIT DPC OPTIONAL, block-isvm-ssn [10] EXPLICIT SSN OPTIONAL, block-cnam-dpc [11] EXPLICIT DPC OPTIONAL, block-cnam-ssn [12] EXPLICIT SSN OPTIONAL, block-download-reason [13] DownloadReason, block-wsmsc-dpc [14] EXPLICIT DPC OPTIONAL, block-wsmsc-ssn [15] EXPLICIT SSN OPTIONAL, block-sv-type [16] EXPLICIT SVType OPTIONAL, block-optional-data [17] EXPLICIT OptionalData OPTIONAL } BlockId ::= LnpKey BlockStatus ::= ENUMERATED { active (1), sending (3), download-failed (4), download-failed-partial (5), old (7) } Boolean ::= BOOLEAN CancellationAcknowledgeAction ::= SubscriptionVersionAction CancellationAcknowledgeReply ::= SubscriptionVersionActionReply CancellationAcknowledgeReplyWithErrorCode ::= SubscriptionVersionActionReplyWithErrorCode CancelAction::= SubscriptionVersionAction CancelReply ::= SubscriptionVersionActionReply CancelReplyWithErrorCode ::= SubscriptionVersionActionReplyWithErrorCode DPC ::= CHOICE { dpc-value [0] OCTET STRING (SIZE(3)), no-value-needed [1] NULL } DigitString ::= GraphicString (FROM ("0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "*" | "#" )) DisconnectAction::= SEQUENCE { subscription-version-action [0] EXPLICIT SubscriptionVersionAction, customer-disconnect-date [1] GeneralizedTime, effective-release-date [2] GeneralizedTime OPTIONAL } DisconnectReply ::= SEQUENCE { status SubscriptionVersionActionReply, version-id SET OF SubscriptionVersionId OPTIONAL, error-code LnpSpecificErrorCode OPTIONAL -- present if status not success } DownloadAction ::= CHOICE { subscriber-download [0] EXPLICIT SubscriptionDownloadCriteria, network-download [1] NetworkDownloadCriteria, block-download [2] BlockDownloadCriteria, service-prov-download [3] ServiceProvDownloadCriteria, swim-download [4] SwimDownloadCriteria } DownloadReason ::= ENUMERATED { new1 (0), delete1(1), modified (2), audit-discrepancy (3) } DownloadReply ::= SEQUENCE { status ENUMERATED { success (0), failed (1), time-range-invalid (2), criteria-to-large (3), no-data-selected (4), swim-more-data (5) }, downloaddata CHOICE { subscriber-data [0] SubscriptionDownloadData, network-data [1] NetworkDownloadData, block-data [2] BlockDownloadData, service-prov-data [3] ServiceProvDownloadData } OPTIONAL, actionId [10] INTEGER OPTIONAL, error-code [11] LnpSpecificErrorCode OPTIONAL -- present if status not success } EndUserLocationType ::= CHOICE { value [0] NumberString(SIZE(2)), no-value-needed [1] NULL } EndUserLocationValue ::= CHOICE { value [0] NumberString(SIZE(1..12)), no-value-needed [1] NULL } Failed-SP-List ::= SET OF SEQUENCE { service-prov-id ServiceProvId, service-prov-name ServiceProvName } CMIPErrorCode ::= ENUMERATED { noSuchObjectClassEr (0), noSuchObjectInstanceEr (1), accessDeniedEr (2), syncNotSupportedEr (3), invalidFilterEr (4), noSuchAttributeEr (5), invalidAttributeValueEr (6), getListErrorEr (7), setListErorrEr (8), noSuchActionEr (9), processingFailureEr (10), duplicateManagedObjectInstanceEr (11), noSuchReferenceObjectEr (12), noSuchEventTypeEr (13), noSuchArgumentEr (14), invalidArgumentValueEr (15), invalidScopeEr (16), invalidObjectInstanceEr (17), missingattributeValueEr (18), classInstanceConflictEr (19), complexityLimitationEr (20), mistypedOperationEr (21), noSuchInvokeIdEr (22), operationCancelledEr (23) } FailedTN-List ::= SET OF SEQUENCE { subscriptionVersionId SubscriptionVersionId, tn PhoneNumber, errorId CMIPErrorCode } GeneralTime ::= GeneralizedTime GraphicFixedString4 ::= GraphicStringBase(SIZE(4)) GraphicStringBase ::= GraphicString GraphicString4 ::= GraphicStringBase(SIZE(1..4)) GraphicString16 ::= GraphicStringBase(SIZE(1..16)) GraphicString20 ::= GraphicStringBase(SIZE(1..20)) GraphicString25 ::= GraphicStringBase(SIZE(1..25)) GraphicString28 ::= GraphicStringBase(SIZE(1..28)) GraphicString40 ::= GraphicStringBase(SIZE(1..40)) GraphicString60 ::= GraphicStringBase(SIZE(1..60)) GraphicString255 ::= GraphicStringBase(SIZE(1..255)) ID-Range ::= SEQUENCE { start-id LnpKey, end-id LnpKey } Integer ::= INTEGER LnpAccessControl ::= [0] SEQUENCE { systemId [0] EXPLICIT SystemID, systemType [1] SystemType, userId [2] GraphicString60 OPTIONAL, listId [3] INTEGER, keyId [4] INTEGER, cmipDepartureTime [5] GeneralizedTime, sequenceNumber [6] INTEGER(0..4294967295), function [7] AssociationFunction, recoveryMode [8] BOOLEAN, signature [9] BIT STRING } LnpAuditsName ::= GraphicString ("lnpAudits") LnpKey ::= INTEGER LnpNetworkName ::= GraphicString ("lnpNetwork") LnpSMS-Name ::= GraphicString40 LnpServiceProvsName ::= GraphicString ("lnpServiceProvs") LnpSubscriptionsName ::= GraphicString ("lnpSubscriptions") LnpSpecificErrorCode ::= INTEGER LnpSpecificInfo ::= GraphicString255 LnpSpidMigrationAction ::= SEQUENCE { migration-from-sp [0] ServiceProvId, migration-to-sp [1] ServiceProvId, migration-npa-nxx-data [2] MigrationNPANXXData, migration-creation-timestamp [3] GeneralizedTime OPTIONAL, migration-due-date [4] GeneralizedTime OPTIONAL, migration-activation-timestamp [5] GeneralizedTime OPTIONAL } LnpSpidMigrationReply ::= SEQUENCE { status ENUMERATED { success (0), failed (1) }, error-text [1] IMPLICIT GraphicString(SIZE(1..255)) OPTIONAL } LNPType ::= ENUMERATED { lspp (0), lisp (1), pool (2) } LocalSMS-ActionResults ::= SEQUENCE { actionId [0] INTEGER, status [1] ActionResultsStatus, failed-tn-list [2] FailedTN-List OPTIONAL, time-of-completion [3] GeneralizedTime, accessControl [4] LnpAccessControl } LocalSMS-CreateAction ::= SEQUENCE { actionId INTEGER, subscriptionVersionObjects SET OF SubscriptionVersionObject, tn-range TN-Range OPTIONAL } LocalSMS-CreateReply ::= ResultsStatus LRN ::= CHOICE { value [0] OCTET STRING (SIZE(5)), no-value-needed [1] NULL } LRN-ID ::= LnpKey LRN-DownloadData ::= SET OF SEQUENCE { service-prov-lrn-id [0] LRN-ID, service-prov-lrn-value [1] LRN OPTIONAL, service-prov-download-reason [2] DownloadReason, service-prov-lrn-creation-timestamp [3] GeneralizedTime OPTIONAL } LRN-Range ::= SEQUENCE { start-lrn LRN, stop-lrn LRN } LSMSUnits ::= SEQUENCE { dataDownload [0] NULL OPTIONAL, networkDataMgmt [1] NULL OPTIONAL, query [2] NULL OPTIONAL } MediumTimerIndicator ::= BOOLEAN MediumIndicatorError ::= CHOICE { indicator-value [0] BOOLEAN, no-value [1] NULL } MigrationNPANXXData ::= SET OF SEQUENCE { npa-nxx-id NPA-NXX-ID, npa-nxx-value NPA-NXX } MismatchAttributes ::= SEQUENCE { seq0 [0] SEQUENCE { lsms-subscriptionLRN LRN, npac-subscriptionLRN LRN } OPTIONAL, seq1 [1] SEQUENCE { lsms-subscriptionNewCurrentSP ServiceProvId, npac-subscriptionNewCurrentSP ServiceProvId } OPTIONAL, seq2 [2] SEQUENCE { lsms-subscriptionActivationTimeStamp GeneralizedTime, npac-subscriptionActivationTimeStamp GeneralizedTime } OPTIONAL, seq3 [3] SEQUENCE { lsms-subscriptionCLASS-DPC DPC, npac-subscriptionCLASS-DPC DPC } OPTIONAL, seq4 [4] SEQUENCE { lsms-subscriptionCLASS-SSN SSN, npac-subscriptionCLASS-SSN SSN } OPTIONAL, seq5 [5] SEQUENCE { lsms-subscriptionLIDB-DPC DPC, npac-subscriptionLIDB-DPC DPC } OPTIONAL, seq6 [6] SEQUENCE { lsms-subscriptionLIDB-SSN SSN, npac-subscriptionLIDB-SSN SSN } OPTIONAL, seq7 [7] SEQUENCE { lsms-subscriptionISVM-DPC DPC, npac-subscriptionISVM-DPC DPC } OPTIONAL, seq8 [8] SEQUENCE { lsms-subscriptionISVM-SSN SSN, npac-subscriptionISVM-SSN SSN } OPTIONAL, seq9 [9] SEQUENCE { lsms-subscriptionCNAM-DPC DPC, npac-subscriptionCNAM-DPC DPC } OPTIONAL, seq10 [10] SEQUENCE { lsms-subscriptionCNAM-SSN SSN, npac-subscriptionCNAM-SSN SSN } OPTIONAL, seq11 [11] SEQUENCE { lsms-subscriptionEndUserLocationValue EndUserLocationValue, npac-subscriptionEndUserLocationValue EndUserLocationValue } OPTIONAL, seq12 [12] SEQUENCE { lsms-subscriptionEndUserLocationType EndUserLocationType, npac-subscriptionEndUserLocationType EndUserLocationType } OPTIONAL, seq13 [13] SEQUENCE { lsms-subscriptionBillingId BillingId, npac-subscriptionBillingId BillingId } OPTIONAL, seq14 [14] SEQUENCE { lsms-subscriptionLNPType LNPType, npac-subscriptionLNPType LNPType } OPTIONAL, seq15 [15] SEQUENCE { lsms-subscriptionWSMSC-DPC DPC, npac-subscriptionWSMSC-DPC DPC } OPTIONAL, seq16 [16] SEQUENCE { lsms-subscriptionWSMSC-SSN SSN, npac-subscriptionWSMSC-SSN SSN } OPTIONAL, seq17 [17] SEQUENCE { lsms-sv-type SVType, npac-sv-type SVType } OPTIONAL, seq18 [18] SEQUENCE { lsms-optional-data OptionalData, npac-optional-data OptionalData } OPTIONAL } ModifyAction::= SEQUENCE { subscription-version-action [0] EXPLICIT SubscriptionVersionAction, version-status [1] VersionStatus OPTIONAL, data-to-modify [2] SubscriptionModifyData } ModifyReply ::= SEQUENCE { status SubscriptionVersionActionReply, invalid-data SubscriptionModifyInvalidData OPTIONAL, error-code LnpSpecificErrorCode OPTIONAL -- present if status not success } NetworkAddressInformation ::= SET OF SEQUENCE { interfaceAddress OSI-Address, systemType SystemType } NetworkDownloadCriteria ::= SEQUENCE { time-range [0] TimeRange OPTIONAL, -- swim value NOT applicable chc1 [1] EXPLICIT CHOICE { service-prov [0] ServiceProvId, all-service-provs [1] NULL }, chc2 [2] EXPLICIT CHOICE {-- A decision was made by -- NANC to leave this structure a CHOICE of -- CHOICEs instead of using one CHOICE to -- simplify tagging npa-nxx-data [0] EXPLICIT CHOICE { npa-nxx-range [0] NPA-NXX-Range, all-npa-nxx [1] NULL }, lrn-data [1] EXPLICIT CHOICE { lrn-range [0] LRN-Range, all-lrn [1] NULL }, all-network-data [2] NULL, npa-nxx-x-data [3] EXPLICIT CHOICE { npa-nxx-x-range [0] NPA-NXX-X-Range, all-npa-nxx-x [1] NULL } } } NetworkDownloadData ::= SET OF SEQUENCE { service-prov-data [0] SEQUENCE { service-prov-id ServiceProvId, service-prov-name ServiceProvName OPTIONAL }, service-prov-npa-nxx-data [1] NPA-NXX-DownloadData OPTIONAL, service-prov-lrn-data [2] LRN-DownloadData OPTIONAL, service-prov-npa-nxx-x-data [3] NPA-NXX-X-DownloadData OPTIONAL } NetworkNotificationRecoveryAction ::= TimeRange NetworkNotificationRecoveryReply ::= SEQUENCE { status ENUMERATED { success (0), failed (1), time-range-invalid (2), criteria-to-large (3), no-data-selected (4), swim-more-data (5) }, system-choice CHOICE { lsms [1] SET OF SEQUENCE { managedObjectClass ObjectClass, managedObjectInstance ObjectInstance, notification CHOICE { subscription-version-new-npa-nxx [1] VersionNewNPA-NXX-Recovery, lnp-npac-sms-operational-information [2] NPAC-SMS-Operational-InformationRecovery } }, soa [2] SET OF SEQUENCE { managedObjectClass ObjectClass, managedObjectInstance ObjectInstance, notification CHOICE { subscription-version-new-npa-nxx [1] VersionNewNPA-NXX-Recovery, subscription-version-donor-sp-customer-disconnect-date [2] VersionCustomerDisconnectDateRecovery, subscription-version-audit-discrepancy-report [3] AuditDiscrepancyRptRecovery, subscription-audit-results [4] AuditResultsRecovery, lnp-npac-sms-operational-information [5] NPAC-SMS-Operational-InformationRecovery, subscription-version-new-sp-create-request [6] VersionNewSP-CreateRequestRecovery, subscription-version-old-sp-concurrence-request [7] VersionOldSP-ConcurrenceRequestRecovery, subscription-version-old-sp-final-window-expiration [8] VersionOldSPFinalConcurrenceWindowExpirationRecovery, subscription-version-cancellation-acknowledge-request [9] VersionCancellationAcknowledgeRequestRecovery, subscriptionVersionStatusAttributeValueChange [10] VersionStatusAttributeValueChangeRecovery, attribute-value-change [11] AttributeValueChangeInfo, object-creation [12] ObjectInfo, object-deletion [13] ObjectInfo, numberPoolBlockStatusAttributeValueChange [14] NumberPoolBlockStatusAttributeValueChangeRecovery, versionRangeAttributeValueChangeRecovery [15] VersionRangeAttributeValueChangeRecovery, versionRangeObjectCreationRecovery [16] VersionRangeObjectCreationRecovery, versionRangeStatusAttributeValueChangeRecovery [17] VersionRangeStatusAttributeValueChangeRecovery, versionRangeCustomerDisconnectDateRecovery [18] VersionRangeCustomerDisconnectDateRecovery, versionRangeCancellationAcknowledgeRecovery [19] VersionRangeCancellationAcknowledgeRecovery, versionRangeNewSP-CreateRequestRecovery [20] VersionRangeNewSP-CreateRequestRecovery, versionRangeOldSP-ConcurrenceRequestRecovery [21] VersionRangeOldSP-ConcurrenceRequestRecovery, versionRangeOldSPFinalConcurrenceWindowExpirationRecovery [22] VersionRangeOldSPFinalConcurrenceWindowExpirationRecovery, versionRangeNewSP-FinalCreateWindowExpirationRecovery [23] VersionRangeNewSP-FinalCreateWindowExpirationRecovery, subscription-version-new-sp-final-window-expiration [24] VersionNewSP-FinalCreateWindowExpirationRecovery } } } OPTIONAL, actionId [10] INTEGER OPTIONAL, error-code [11] LnpSpecificErrorCode OPTIONAL -- present if status not success } NewSP-CreateAction ::= NewSP-CreateData NewSP-CreateData ::= SEQUENCE { chc1 [0] EXPLICIT CHOICE { subscription-version-tn [0] PhoneNumber, subscription-version-tn-range [1] TN-Range }, subscription-lrn [1] LRN OPTIONAL, subscription-new-current-sp [2] ServiceProvId, subscription-old-sp [3] ServiceProvId, subscription-new-sp-due-date [4] GeneralizedTime, subscription-class-dpc [6] EXPLICIT DPC OPTIONAL, subscription-class-ssn [7] EXPLICIT SSN OPTIONAL, subscription-lidb-dpc [8] EXPLICIT DPC OPTIONAL, subscription-lidb-ssn [9] EXPLICIT SSN OPTIONAL, subscription-isvm-dpc [10] EXPLICIT DPC OPTIONAL, subscription-isvm-ssn [11] EXPLICIT SSN OPTIONAL, subscription-cnam-dpc [12] EXPLICIT DPC OPTIONAL, subscription-cnam-ssn [13] EXPLICIT SSN OPTIONAL, subscription-end-user-location-value [14] EndUserLocationValue OPTIONAL, subscription-end-user-location-type [15] EndUserLocationType OPTIONAL, subscription-billing-id [16] BillingId OPTIONAL, subscription-lnp-type [17] LNPType, subscription-porting-to-original-sp-switch [18] SubscriptionPortingToOriginal-SPSwitch, subscription-wsmsc-dpc [19] EXPLICIT DPC OPTIONAL, subscription-wsmsc-ssn [20] EXPLICIT SSN OPTIONAL, subscription-sv-type [21] EXPLICIT SVType OPTIONAL, subscription-optional-data [22] EXPLICIT OptionalData OPTIONAL, subscription-med-ind [23] EXPLICIT MediumTimerIndicator OPTIONAL } NewSP-CreateReply ::= SEQUENCE { status [0] SubscriptionVersionActionReply, invalid-data [1] NewSP-CreateInvalidData OPTIONAL, error-code [2] LnpSpecificErrorCode OPTIONAL -- present if status not success } NewSP-CreateInvalidData ::= CHOICE { subscription-version-tn [0] EXPLICIT PhoneNumber, subscription-version-tn-range [1] EXPLICIT TN-Range, subscription-lrn [2] EXPLICIT LRN, subscription-new-current-sp [3] EXPLICIT ServiceProvId, subscription-old-sp [4] EXPLICIT ServiceProvId, subscription-new-sp-due-date [5] EXPLICIT GeneralizedTime, subscription-class-dpc [6] EXPLICIT DPC, subscription-class-ssn [7] EXPLICIT SSN, subscription-lidb-dpc [8] EXPLICIT DPC, subscription-lidb-ssn [9] EXPLICIT SSN, subscription-isvm-dpc [10] EXPLICIT DPC, subscription-isvm-ssn [11] EXPLICIT SSN, subscription-cnam-dpc [12] EXPLICIT DPC, subscription-cnam-ssn [13] EXPLICIT SSN, subscription-end-user-location-value [14] EXPLICIT EndUserLocationValue, subscription-end-user-location-type [15] EXPLICIT EndUserLocationType, subscription-billing-id [16] EXPLICIT BillingId, subscription-lnp-type [17] EXPLICIT LNPType, subscription-porting-to-original-sp-switch [18] EXPLICIT SubscriptionPortingToOriginal-SPSwitch, subscription-wsmsc-dpc [19] EXPLICIT DPC, subscription-wsmsc-ssn [20] EXPLICIT SSN, subscription-sv-type [21] EXPLICIT SVType, subscription-optional-data [22] EXPLICIT OptionalData, subscription-med-ind [23] EXPLICIT MediumIndicatorError } NpacAssociationUserInfo ::= SEQUENCE { error-code [0] IMPLICIT ErrorCode, error-text [1] IMPLICIT GraphicString(SIZE(1..80)) } ErrorCode ::= ENUMERATED { success (0), access-denied (1), retry-same-host (2), try-other-host (3), new-bind-received (4) } NPA ::= NumberString(SIZE(3)) NPA-NXX ::= SEQUENCE { npa-value NPA, nxx-value NumberString(SIZE(3)) } NPA-NXX-DownloadData ::= SET OF SEQUENCE { service-prov-npa-nxx-id NPA-NXX-ID, service-prov-npa-nxx-value NPA-NXX OPTIONAL, service-prov-npa-nxx-effective-timestamp GeneralizedTime OPTIONAL, service-prov-download-reason DownloadReason, service-prov-npa-nxx-creation-timestamp GeneralizedTime OPTIONAL, service-prov-npa-nxx-modified-timestamp [0] GeneralizedTime OPTIONAL } NPA-NXX-ID ::= LnpKey NPA-NXX-Range ::= SEQUENCE { start-npa-nxx NPA-NXX, stop-npa-nxx NPA-NXX } NPA-NXX-X ::= NumberString(SIZE(7)) NPA-NXX-X-DownloadData ::= SET OF SEQUENCE { service-prov-npa-nxx-x-id [0] NPA-NXX-X-ID, service-prov-npa-nxx-x [1] NPA-NXX-X OPTIONAL, service-prov-npa-nxx-x-effective-timestamp [2] GeneralizedTime OPTIONAL, service-prov-npa-nxx-x-creation-timestamp [3] GeneralizedTime OPTIONAL, service-prov-npa-nxx-x-modified-timestamp [4] GeneralizedTime OPTIONAL, service-prov-npa-nxx-x-download-reason [5] DownloadReason } NPA-NXX-X-ID ::= LnpKey NPA-NXX-X-Range ::= SEQUENCE { start-npa-nxx-x NPA-NXX-X, stop-npa-nxx-x NPA-NXX-X } NPAC-SMS-Operational-Information ::= SEQUENCE { down-time TimeRange, -- swim value NOT applicable npac-contact-number PhoneNumber, additional-down-time-information GraphicString255, access-control LnpAccessControl } NPAC-SMS-Operational-InformationRecovery ::= SEQUENCE { down-time TimeRange, -- swim value NOT applicable npac-contact-number PhoneNumber, additional-down-time-information GraphicString255 } NumberPoolBlock-CreateAction ::= SEQUENCE { block-npa-nxx-x NPA-NXX-X, block-holder-sp ServiceProvId, block-lrn LRN, block-class-dpc DPC, block-class-ssn SSN, block-lidb-dpc DPC, block-lidb-ssn SSN, block-isvm-dpc DPC, block-isvm-ssn SSN, block-cnam-dpc DPC, block-cnam-ssn SSN, block-wsmsc-dpc [0] DPC OPTIONAL, block-wsmsc-ssn [1] SSN OPTIONAL, block-sv-type [2] SVType OPTIONAL, block-optional-data [3] OptionalData OPTIONAL } NumberPoolBlock-CreateInvalidData ::= CHOICE { block-npa-nxx-x [0] EXPLICIT NPA-NXX-X, block-lrn [1] EXPLICIT LRN, block-class-dpc [2] EXPLICIT DPC, block-class-ssn [3] EXPLICIT SSN, block-lidb-dpc [4] EXPLICIT DPC, block-lidb-ssn [5] EXPLICIT SSN, block-isvm-dpc [6] EXPLICIT DPC, block-isvm-ssn [7] EXPLICIT SSN, block-cnam-dpc [8] EXPLICIT DPC, block-cnam-ssn [9] EXPLICIT SSN, block-wsmsc-dpc [10] EXPLICIT DPC, block-wsmsc-ssn [11] EXPLICIT SSN, block-sv-type [12] EXPLICIT SVType, block-optional-data [13] EXPLICIT OptionalData } NumberPoolBlock-CreateReply ::= SEQUENCE { block-id [0] BlockId, status [1] ENUMERATED { success (0), failed (1), soa-not-authorized (2), no-npa-nxx-x-found (3), invalid-data-values (4), number-pool-block-already-exists (5), prior-to-effective-date (6), invalid-subscription-versions (7) }, block-invalid-values [2] NumberPoolBlock-CreateInvalidData OPTIONAL, error-code [3] LnpSpecificErrorCode OPTIONAL -- present if status not success } NumberPoolBlockStatusAttributeValueChange ::= SEQUENCE { value-change-info [0] AttributeValueChangeInfo, failed-service-provs [1] Failed-SP-List OPTIONAL, access-control [2] LnpAccessControl, block-npa-nxx-x [3] NPA-NXX-X OPTIONAL } NumberPoolBlockStatusAttributeValueChangeRecovery ::= SEQUENCE { value-change-info [0] AttributeValueChangeInfo, failed-service-provs [1] Failed-SP-List OPTIONAL, block-npa-nxx-x [2] NPA-NXX-X OPTIONAL } NumberString ::= GraphicString (FROM ("0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9")) OldSP-CreateAction ::= OldSP-CreateData OldSP-CreateData ::= SEQUENCE { chc1 [0] EXPLICIT CHOICE { subscription-version-tn [0] PhoneNumber, subscription-version-tn-range [1] TN-Range }, subscription-new-current-sp [1] ServiceProvId, subscription-old-sp [2] ServiceProvId, subscription-old-sp-due-date [3] GeneralizedTime, subscription-old-sp-authorization [4] ServiceProvAuthorization, subscription-status-change-cause-code [5] SubscriptionStatusChangeCauseCode, subscription-lnp-type [6] LNPType, subscription-med-ind [7] EXPLICIT MediumTimerIndicator OPTIONAL } OldSP-CreateReply ::= SEQUENCE { status SubscriptionVersionActionReply, invalid-data OldSP-CreateInvalidData OPTIONAL, error-code LnpSpecificErrorCode OPTIONAL -- present if status not success } OldSP-CreateInvalidData ::= CHOICE { subscription-version-tn [0] EXPLICIT PhoneNumber, subscription-version-tn-range [1] EXPLICIT TN-Range, subscription-new-current-sp [2] EXPLICIT ServiceProvId, subscription-old-sp [3] EXPLICIT ServiceProvId, subscription-old-sp-due-date [4] EXPLICIT GeneralizedTime, subscription-old-sp-authorization [5] EXPLICIT ServiceProvAuthorization, subscription-status-change-cause-code [6] EXPLICIT SubscriptionStatusChangeCauseCode, subscription-lnp-type [7] EXPLICIT LNPType, subscription-med-ind [8] EXPLICIT MediumIndicatorError } OptionalData ::= GraphicString OSI-Address ::= SEQUENCE { nsap OCTET STRING(SIZE(12)), tsap OCTET STRING(SIZE(1..4)), ssap OCTET STRING(SIZE(1..4)), psap OCTET STRING(SIZE(1..4)) } PhoneNumber ::= NumberString(SIZE(10)) RangeNotifyTN-ID-Info ::= CHOICE { list-data [0] SET OF TN-VersionId, range-data [1] SEQUENCE { tn-range TN-Range, id-range ID-Range } } RangeNotifyID-Info ::= CHOICE { list-data [0] SET OF LnpKey, range-data [1] ID-Range } RangeStatusAttributeValueChangeInfo ::= SEQUENCE { version-id [0] RangeNotifyID-Info, value-change-info [1] AttributeValueChangeInfo, failed-service-provs [2] Failed-SP-List OPTIONAL, subscription-status-change-cause-code [3] SubscriptionStatusChangeCauseCode OPTIONAL, tn-range [4] TN-Range OPTIONAL } RangeAttributeValueChangeInfo ::= SEQUENCE { version-id RangeNotifyID-Info, value-change-info AttributeValueChangeInfo, tn-range TN-Range OPTIONAL } RangeObjectCreationInfo ::= SEQUENCE { tn-version-id RangeNotifyTN-ID-Info, object-info SET OF ObjectInfo } RangeCustomerDisconnectDateInfo ::= SEQUENCE { tn-version-id [0] RangeNotifyTN-ID-Info, customer-disconnect-date [1] GeneralizedTime, effective-release-date [2] GeneralizedTime OPTIONAL } RangeCancellationAcknowledgeInfo ::= RangeNotifyTN-ID-Info RangeNewSP-CreateRequestInfo ::= SEQUENCE { tn-version-id RangeNotifyTN-ID-Info, service-prov-id ServiceProvId, service-prov-due-date GeneralizedTime, service-prov-authorization-creation-time-stamp GeneralizedTime, service-prov-old-authorization ServiceProvAuthorization, subscription-status-change-cause-code SubscriptionStatusChangeCauseCode, subscription-timer-type [0] Integer OPTIONAL, subscription-business-type [1] Integer OPTIONAL } RangeOldSP-ConcurrenceRequestInfo ::= SEQUENCE { tn-version-id RangeNotifyTN-ID-Info, service-prov-id ServiceProvId, service-prov-due-date GeneralizedTime, service-prov-authorization-creation-time-stamp GeneralizedTime, subscription-timer-type [0] Integer OPTIONAL, subscription-business-type [1] Integer OPTIONAL } RangeOldSPFinalConcurrenceWindowExpirationInfo ::= SEQUENCE { tn-version-id RangeNotifyTN-ID-Info, subscription-timer-type [0]Integer OPTIONAL, subscription-business-type [1] Integer OPTIONAL } RangeNewSP-FinalCreateWindowExpirationInfo ::= SEQUENCE { tn-version-id [0] RangeNotifyTN-ID-Info, service-prov-id [1] ServiceProvId, service-prov-due-date [2] GeneralizedTime, service-prov-authorization-creation-time-stamp [3] GeneralizedTime, subscription-timer-type [4] Integer OPTIONAL, subscription-business-type [5] Integer OPTIONAL, new-service-prov-id [6] ServiceProvId, service-prov-old-authorization [7] ServiceProvAuthorization, subscription-status-change-cause-code [8] SubscriptionStatusChangeCauseCode OPTIONAL } RecoveryCompleteAction ::= NULL RecoveryCompleteReply ::= SEQUENCE { status ResultsStatus, subscriber-data [1] SubscriptionDownloadData OPTIONAL, network-data [2] NetworkDownloadData OPTIONAL, block-data [3] BlockDownloadData OPTIONAL, error-code [4] LnpSpecificErrorCode OPTIONAL -- present if status not success } RemoveFromConflictAction ::= SubscriptionVersionAction RemoveFromConflictReply ::= SubscriptionVersionActionReply RemoveFromConflictReplyWithErrorCode ::= SubscriptionVersionActionReplyWithErrorCode ResultsStatus ::= ENUMERATED { success(0), failure(1) } ServiceProvAuthorization ::= BOOLEAN ServiceProvDownloadCriteria::= SEQUENCE { time-range TimeRange OPTIONAL, service-prov-choice CHOICE { service-prov [0] ServiceProvId, all-service-provs [1] NULL } } ServiceProvDownloadData ::= SET OF SEQUENCE { service-prov-id [0] ServiceProvId, service-prov-type [1] ServiceProviderType OPTIONAL, service-prov-name [2] ServiceProvName OPTIONAL, service-prov-download-reason [3] DownloadReason } ServiceProvId ::= GraphicFixedString4 -- must be 4 alphanumeric characters ServiceProvName ::= GraphicString40 ServiceProviderType ::= ENUMERATED { wireline (0), wireless (1), non-carrier (2), class1InterconnectedVoIP (3), sp-type-4 (4), sp-type-5 (5) } SoaUnits ::= SEQUENCE { soaMgmt [0] NULL OPTIONAL, networkDataMgmt [1] NULL OPTIONAL, dataDownload [2] NULL OPTIONAL, notificationDownload [3] NULL OPTIONAL } SSN ::= CHOICE { ssn-value [0] INTEGER(0..255), no-value-needed [1] NULL } SubscriptionData ::= SEQUENCE { subscription-lrn [1] LRN OPTIONAL, subscription-new-current-sp [2] ServiceProvId OPTIONAL, subscription-activation-timestamp [3] GeneralizedTime OPTIONAL, subscription-class-dpc [4] EXPLICIT DPC, subscription-class-ssn [5] EXPLICIT SSN, subscription-lidb-dpc [6] EXPLICIT DPC, subscription-lidb-ssn [7] EXPLICIT SSN, subscription-isvm-dpc [8] EXPLICIT DPC, subscription-isvm-ssn [9] EXPLICIT SSN, subscription-cnam-dpc [10] EXPLICIT DPC, subscription-cnam-ssn [11] EXPLICIT SSN, subscription-end-user-location-value [12] EndUserLocationValue OPTIONAL, subscription-end-user-location-type [13] EndUserLocationType OPTIONAL, subscription-billing-id [14] BillingId OPTIONAL, subscription-lnp-type [15] LNPType, subscription-download-reason [16] DownloadReason, subscription-wsmsc-dpc [17] EXPLICIT DPC OPTIONAL, subscription-wsmsc-ssn [18] EXPLICIT SSN OPTIONAL, subscription-sv-type [19] EXPLICIT SVType OPTIONAL, subscription-optional-data [20] EXPLICIT OptionalData OPTIONAL } SubscriptionDownloadCriteria ::= CHOICE { time-range [0] TimeRange, -- swim value NOT applicable tn [1] PhoneNumber, tn-range [2] TN-Range } SubscriptionDownloadData ::= SET OF SEQUENCE { subscription-version-id [0] SubscriptionVersionId, subscription-version-tn [1] PhoneNumber OPTIONAL, subscription-data SubscriptionData } SubscriptionModifyData ::= SEQUENCE { subscription-lrn [0] LRN OPTIONAL, subscription-new-sp-due-date [1] GeneralizedTime OPTIONAL, subscription-old-sp-due-date [2] GeneralizedTime OPTIONAL, subscription-old-sp-authorization [3] ServiceProvAuthorization OPTIONAL, subscription-class-dpc [4] EXPLICIT DPC OPTIONAL, subscription-class-ssn [5] EXPLICIT SSN OPTIONAL, subscription-lidb-dpc [6] EXPLICIT DPC OPTIONAL, subscription-lidb-ssn [7] EXPLICIT SSN OPTIONAL, subscription-isvm-dpc [8] EXPLICIT DPC OPTIONAL, subscription-isvm-ssn [9] EXPLICIT SSN OPTIONAL, subscription-cnam-dpc [10] EXPLICIT DPC OPTIONAL, subscription-cnam-ssn [11] EXPLICIT SSN OPTIONAL, subscription-end-user-location-value [12] EndUserLocationValue OPTIONAL, subscription-end-user-location-type [13] EndUserLocationType OPTIONAL, subscription-billing-id [14] BillingId OPTIONAL, subscription-status-change-cause-code [15] SubscriptionStatusChangeCauseCode OPTIONAL, subscription-wsmsc-dpc [16] EXPLICIT DPC OPTIONAL, subscription-wsmsc-ssn [17] EXPLICIT SSN OPTIONAL, subscription-customer-disconnect-date [18] GeneralizedTime OPTIONAL, subscription-effective-release-date [19] GeneralizedTime OPTIONAL, new-version-status [20] VersionStatus OPTIONAL, subscription-sv-type [21] EXPLICIT SVType OPTIONAL, subscription-optional-data [22] EXPLICIT OptionalData OPTIONAL, subscription-new-sp-med-ind [23] EXPLICIT MediumTimerIndicator OPTIONAL, subscription-old-sp-med-ind [24] EXPLICIT MediumTimerIndicator OPTIONAL } SubscriptionModifyInvalidData ::= CHOICE { subscription-lrn [0] EXPLICIT LRN, subscription-new-sp-due-date [1] EXPLICIT GeneralizedTime, subscription-old-sp-due-date [2] EXPLICIT GeneralizedTime, subscription-old-sp-authorization [3] EXPLICIT ServiceProvAuthorization, subscription-class-dpc [4] EXPLICIT DPC, subscription-class-ssn [5] EXPLICIT SSN, subscription-lidb-dpc [6] EXPLICIT DPC, subscription-lidb-ssn [7] EXPLICIT SSN, subscription-isvm-dpc [8] EXPLICIT DPC, subscription-isvm-ssn [9] EXPLICIT SSN, subscription-cnam-dpc [10] EXPLICIT DPC, subscription-cnam-ssn [11] EXPLICIT SSN, subscription-end-user-location-value [12] EXPLICIT EndUserLocationValue, subscription-end-user-location-type [13] EXPLICIT EndUserLocationType, subscription-billing-id [14] EXPLICIT BillingId, subscription-status-change-cause-code [15] EXPLICIT SubscriptionStatusChangeCauseCode, subscription-wsmsc-dpc [16] EXPLICIT DPC, subscription-wsmsc-ssn [17] EXPLICIT SSN, subscription-customer-disconnect-date [18] EXPLICIT GeneralizedTime, subscription-effective-release-date [19] EXPLICIT GeneralizedTime, new-version-status [20] EXPLICIT VersionStatus, subscription-sv-type [21] EXPLICIT SVType, subscription-optional-data [22] EXPLICIT OptionalData, subscription-new-sp-med-ind [23] EXPLICIT MediumIndicatorError, subscription-old-sp-med-ind [24] EXPLICIT MediumIndicatorError } SubscriptionPortingToOriginal-SPSwitch ::= BOOLEAN SubscriptionPreCancellationStatus ::= ENUMERATED { conflict (0), pending (2), disconnect-pending (6) } SubscriptionStatusChangeCauseCode ::= CHOICE { value [0] INTEGER, no-value-needed [1] NULL } SubscriptionVersionAction ::= CHOICE { subscription-version-action-key [0] EXPLICIT SubscriptionVersionActionKey, subscription-version-tn-range [1] TN-Range } SubscriptionVersionActionKey ::= CHOICE { version-id [0] SubscriptionVersionId, tn [1] PhoneNumber } SubscriptionVersionActionReply ::= ENUMERATED { success (0), failed (1), soa-not-authorized (2), no-version-found (3), invalid-data-values (4), version-create-already-exists (5) } SubscriptionVersionActionReplyWithErrorCode ::= SEQUENCE { status SubscriptionVersionActionReply, error-code LnpSpecificErrorCode OPTIONAL -- present if status not success } SubscriptionVersionId ::= LnpKey SubscriptionVersionObject ::= SEQUENCE { tn-version-id SET OF TN-VersionId, subscription-data SubscriptionData } SVType ::= ENUMERATED { wireline (0), wireless (1), class2InterconnectedVoIP (2), voWiFi (3), prepaid-wireless (4), class1InterconnectedVoIP (5), sv-type-6 (6), sv-type-7 (7), sv-type-8 (8), sv-type-9 (9) } SwimDownloadCriteria ::= SEQUENCE { data-type [0] SwimDownloadDataType, actionId [1] INTEGER OPTIONAL } SwimDownloadDataType ::= CHOICE { subscriber-download [0] NULL, network-download [1] NULL, block-download [2] NULL, service-prov-download [3] NULL } SwimNotificationCriteria ::= SEQUENCE { actionInfo [0] EXPLICIT CHOICE { actionId [0] INTEGER, no-value-needed [1] NULL } } SwimProcessing-RecoveryResponse ::= SEQUENCE { status [0] SwimResultsStatus, error-code [1] LnpSpecificErrorCode OPTIONAL, -- present if status not success stop-date [2] GeneralizedTime OPTIONAL, -- present if SWIM data collection turned off additionalInformation [3] AdditionalInformation OPTIONAL } SwimProcessing-RecoveryResults ::= SEQUENCE { actionId [0] INTEGER, status [1] SwimResultsStatus, time-of-completion [3] GeneralizedTime, accessControl [4] LnpAccessControl } SwimResultsStatus ::= ResultsStatus SystemID ::= CHOICE { serviceProvId [0] ServiceProvId, npac-sms [1] GraphicString60 } SystemType ::= ENUMERATED { soa(0), local-sms(1), soa-and-local-sms(2), -- it is assumed this value will not be sent by any -- local system npac-sms(3) -- value is only valid for AccessControl definition } TimeRange ::= SEQUENCE { startTime [0] GeneralizedTime, stopTime [1] GeneralizedTime, swim-download [2] SwimNotificationCriteria OPTIONAL -- startTime and stopTime -- ignored when swim is provided } TN-Range ::= SEQUENCE { tn-start NumberString(SIZE(10)), tn-stop NumberString(SIZE(4)) } TN-VersionId ::= SEQUENCE { tn PhoneNumber, version-id SubscriptionVersionId } VersionCancellationAcknowledgeRequest ::= SEQUENCE { tn PhoneNumber, version-id LnpKey, access-control LnpAccessControl } VersionCancellationAcknowledgeRequestRecovery ::= SEQUENCE { tn PhoneNumber, version-id LnpKey } VersionCreateConcurrenceRequest ::= SEQUENCE { tn PhoneNumber, version-id LnpKey, service-prov-id ServiceProvId, service-prov-due-date GeneralizedTime, service-prov-authorization-creation-time-stamp GeneralizedTime, access-control LnpAccessControl, subscription-timer-type [0] Integer OPTIONAL, subscription-business-type [1] Integer OPTIONAL } VersionCreateConcurrenceRequestRecovery ::= SEQUENCE { tn [0] PhoneNumber, version-id [1] LnpKey, service-prov-id [2] ServiceProvId, service-prov-due-date [3] GeneralizedTime, service-prov-authorization-creation-time-stamp [4] GeneralizedTime, subscription-timer-type [5] Integer OPTIONAL, subscription-business-type [6] Integer OPTIONAL } VersionCustomerDisconnectDate ::= SEQUENCE { tn PhoneNumber, version-id LnpKey, service-prov-customer-disconnect-date GeneralizedTime, service-prov-effective-release-date GeneralizedTime OPTIONAL, access-control LnpAccessControl } VersionCustomerDisconnectDateRecovery ::= SEQUENCE { tn PhoneNumber, version-id LnpKey, service-prov-customer-disconnect-date GeneralizedTime, service-prov-effective-release-date GeneralizedTime OPTIONAL } VersionNewNPA-NXX ::= SEQUENCE { service-prov-npa-nxx-id NPA-NXX-ID, service-prov-npa-nxx-value NPA-NXX, service-prov-npa-nxx-effective-time-stamp GeneralizedTime, service-prov-id ServiceProvId, access-control LnpAccessControl } VersionNewNPA-NXX-Recovery ::= SEQUENCE { service-prov-npa-nxx-id NPA-NXX-ID, service-prov-npa-nxx-value NPA-NXX, service-prov-npa-nxx-effective-time-stamp GeneralizedTime, service-prov-id ServiceProvId } VersionNewSP-CreateRequest ::= SEQUENCE { version-create-request [0] VersionCreateConcurrenceRequest, service-prov-old-authorization [1] ServiceProvAuthorization, subscription-status-change-cause-code [2] SubscriptionStatusChangeCauseCode } VersionNewSP-CreateRequestRecovery ::= SEQUENCE { version-create-request [0] VersionCreateConcurrenceRequestRecovery, service-prov-old-authorization [1] ServiceProvAuthorization, subscription-status-change-cause-code [2] SubscriptionStatusChangeCauseCode } VersionNewSP-FinalCreateWindowExpiration ::= SEQUENCE { version-create-request [0] VersionCreateConcurrenceRequest, new-service-prov-id [1] ServiceProvId, service-prov-old-authorization [2] ServiceProvAuthorization, subscription-status-change-cause-code [3] SubscriptionStatusChangeCauseCode OPTIONAL } VersionNewSP-FinalCreateWindowExpirationRecovery ::= SEQUENCE { version-create-request [0] VersionCreateConcurrenceRequestRecovery, new-service-prov-id [1] ServiceProvId, service-prov-old-authorization [2] ServiceProvAuthorization, subscription-status-change-cause-code [3] SubscriptionStatusChangeCauseCode OPTIONAL } VersionOldSP-ConcurrenceRequest ::= VersionCreateConcurrenceRequest VersionOldSP-ConcurrenceRequestRecovery ::= VersionCreateConcurrenceRequestRecovery VersionOldSPFinalConcurrenceWindowExpiration ::= SEQUENCE { tn PhoneNumber, version-id LnpKey, access-control LnpAccessControl, subscription-timer-type [0]Integer OPTIONAL, subscription-business-type [1] Integer OPTIONAL } VersionOldSPFinalConcurrenceWindowExpirationRecovery ::= SEQUENCE { tn [0] PhoneNumber, version-id [1] LnpKey, subscription-timer-type [2]Integer OPTIONAL, subscription-business-type [3] Integer OPTIONAL } VersionRangeAttributeValueChange ::= SEQUENCE { range-attribute-value-change RangeAttributeValueChangeInfo, access-control LnpAccessControl } VersionRangeAttributeValueChangeRecovery ::= RangeAttributeValueChangeInfo VersionRangeObjectCreation ::= SEQUENCE { range-object-creation RangeObjectCreationInfo, access-control LnpAccessControl } VersionRangeObjectCreationRecovery ::= RangeObjectCreationInfo VersionRangeStatusAttributeValueChange ::= SEQUENCE { range-status-attribute-value-changes RangeStatusAttributeValueChangeInfo, access-control LnpAccessControl } VersionRangeStatusAttributeValueChangeRecovery ::= RangeStatusAttributeValueChangeInfo VersionRangeCustomerDisconnectDate ::= SEQUENCE { range-donor-disconnect RangeCustomerDisconnectDateInfo, access-control LnpAccessControl } VersionRangeCustomerDisconnectDateRecovery ::= RangeCustomerDisconnectDateInfo VersionRangeCancellationAcknowledgeRequest ::= SEQUENCE { tn-version-id RangeNotifyTN-ID-Info, access-control LnpAccessControl } VersionRangeCancellationAcknowledgeRecovery ::= RangeNotifyTN-ID-Info VersionRangeNewSP-CreateRequest ::= SEQUENCE { range-new-sp-create RangeNewSP-CreateRequestInfo, access-control LnpAccessControl } VersionRangeNewSP-CreateRequestRecovery ::= RangeNewSP-CreateRequestInfo VersionRangeOldSP-ConcurrenceRequest::= SEQUENCE { range-oldsp-concurrence RangeOldSP-ConcurrenceRequestInfo, access-control LnpAccessControl } VersionRangeOldSP-ConcurrenceRequestRecovery ::= RangeOldSP-ConcurrenceRequestInfo VersionRangeOldSPFinalConcurrenceWindowExpiration ::= SEQUENCE { range-oldsp-final-concurrence RangeOldSPFinalConcurrenceWindowExpirationInfo, access-control LnpAccessControl } VersionRangeOldSPFinalConcurrenceWindowExpirationRecovery ::= RangeOldSPFinalConcurrenceWindowExpirationInfo VersionRangeNewSP-FinalCreateWindowExpiration ::= SEQUENCE { range-newsp-final-create RangeNewSP-FinalCreateWindowExpirationInfo, access-control LnpAccessControl } VersionRangeNewSP-FinalCreateWindowExpirationRecovery ::= RangeNewSP-FinalCreateWindowExpirationInfo VersionStatus ::= ENUMERATED { conflict (0), active (1), pending (2), sending (3), download-failed (4), download-failed-partial (5), disconnect-pending (6), old (7), canceled (8), cancel-pending (9) } VersionStatusAttributeValueChange ::= SEQUENCE { value-change-info [0] AttributeValueChangeInfo, failed-service-provs [1] Failed-SP-List OPTIONAL, subscription-status-change-cause-code [2] SubscriptionStatusChangeCauseCode OPTIONAL, access-control [3] LnpAccessControl, subscription-tn [4] PhoneNumber OPTIONAL } VersionStatusAttributeValueChangeRecovery ::= SEQUENCE { value-change-info [0] AttributeValueChangeInfo, failed-service-provs [1] Failed-SP-List OPTIONAL, subscription-status-change-cause-code [2] SubscriptionStatusChangeCauseCode OPTIONAL, subscription-tn [3] PhoneNumber OPTIONAL } END -- LNP-ASN1 --multipart-boundary--