-- XSD schema extracted from ITU-T J.177 (11/2005)

<?xml version="1.0" encoding="UTF-8"?> <!-- IPCablecom CMS Subscriber/Service Provisioning (PCSP) schema. PCSP defines a messaging interface and an XML encoding format for objects transmitted over that interface. This schema defines the XML encoding syntax for the objects transmitted over the PCSP interface. Encodings for PcspService, PcspEndpoint, PcspMta, and PcspCms objects are specified. A PcspRelation encoding describes associations between objects. A PcspImportExport encoding is used to produce instance documents containing large numbers of objects. --> <xs:schema targetNamespace="http://www.cablelabs.com/Pcsp/I01/schema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.cablelabs.com/Pcsp/I01/schema" elementFormDefault="qualified"> ================= TYPE DEFINITIONS ===================== --> <!-- A non-empty string. --> <xs:simpleType name="nonEmptyString"> <xs:restriction base="xs:string"> <xs:minLength value="1"/> </xs:restriction> </xs:simpleType> <!-- A Service ID. A non null string containing a "format" attribute (an enumeration), which defaults to NSN. --> <xs:complexType name="ServiceIdType"> <xs:simpleContent> <xs:extension base="nonEmptyString"> <xs:attribute name="format" default="NSN"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="NSN"/> <xs:enumeration value="E164"/> <xs:enumeration value="ENUM"/> <xs:enumeration value="URL"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- A relation operation type. Used to indicate relation is being "added" or "deleted". --> <xs:simpleType name="RelationOpType"> <xs:restriction base="xs:string"> <xs:enumeration value="add"/> <xs:enumeration value="delete"/> </xs:restriction> </xs:simpleType> <!-- An enumeration of legal object "class" names. --> <xs:simpleType name="classType"> <xs:restriction base="xs:string"> <xs:enumeration value="PcspService"/> <xs:enumeration value="PcspCms"/> <xs:enumeration value="PcspEndpoint"/> <xs:enumeration value="PcspMta"/> </xs:restriction> </xs:simpleType> <!-- A list of object keys. --> <xs:complexType name="ListOfKeys"> <xs:sequence> <xs:element name="Key" type="xs:string" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- Codec types. An enumeration that matches the PktcCodecType object from the IPCablecom(TM) Audio/Video Codecs Specification J.161. This enumeration should be kept in sync with the aforementioned specification. For convenience, value definitions are repeated here... 1: other. 2: unknown. 3: G729 4: reserved 5: G729E 6: PCMU 7: G726-32 8: G728 9: PCMA 10: G726-16 11: G726-24 12: G726-40 13. iLBC 14. BV-16 In the case of the PcspEndpoint object, a codec value of "2" shall be interpreted as "use the MTA's codec specification". --> <xs:simpleType name="codecType"> <xs:restriction base="xs:integer"> <xs:enumeration value="1"/> <xs:enumeration value="2"/> <xs:enumeration value="3"/> <xs:enumeration value="4"/> <xs:enumeration value="5"/> <xs:enumeration value="6"/> <xs:enumeration value="7"/> <xs:enumeration value="8"/> <xs:enumeration value="9"/> <xs:enumeration value="10"/> <xs:enumeration value="11"/> <xs:enumeration value="12"/> <xs:enumeration value="13"/> <xs:enumeration value="14"/> </xs:restriction> </xs:simpleType> <!-- Signalling protocol designations. PcspEndpoint employs "MtaDefault" to force use of the MTA's default protocol setting. --> <xs:simpleType name="protocolType"> <xs:restriction base="xs:string"> <xs:enumeration value="MCGP 1.0 NCS 1.0"/> <xs:enumeration value="MtaDefault"/> </xs:restriction> </xs:simpleType> <!-- Numeric timezone designation per RFC 1123. --> <xs:simpleType name="TimezoneType"> <xs:restriction base="xs:string"> <xs:pattern value="[\+\-]\d{4}"/> </xs:restriction> </xs:simpleType> <!-- Local number PortingStatus 0: not ported. 1: ported in (owned by another TSP) 2: ported out (loaned to another TSP) --> <xs:simpleType name="portingStatusType"> <xs:restriction base="xs:integer"> <xs:enumeration value="0"/> <xs:enumeration value="1"/> <xs:enumeration value="2"/> </xs:restriction> </xs:simpleType> <!-- ================= SUPPORTING ELEMENT DEFINITIONS ================= --> <!-- Network announcement control. Contains... Language : per XML schema language type. Timezone : see previous definition. --> <xs:element name="Announcements"> <xs:complexType> <xs:sequence> <xs:element name="Language" type="xs:language"/> <xs:element name="Timezone" type="timezoneType"/> </xs:sequence> </xs:complexType> </xs:element> <!-- Interexchange carrier codes. Used to route offnet regional, long distance, and international calls to specific carriers. PIC : Predesignated interexchange carrier (long distance). LPIC : Predesignated intra-lata carrier IPIC : Predesignated international carrier --> <xs:element name="InterExchange"> <xs:complexType> <xs:sequence> <xs:element name="PIC" type="xs:string"/> <xs:element name="LPIC" type="xs: string"/> <xs:element name="IPIC" type="xs: string"/> </xs:sequence> </xs:complexType> </xs:element> <!-- Local Number Portability parameters. PortingStatus : see portingStatusType. LNPT : LNP trigger determines if number is in transition. false/0: no STP lookup required. true/1: STP lookup required to determine LRN of destination switch. --> <xs:element name="LNP"> <xs:complexType> <xs:sequence> <xs:element name="PortingStatus" type="portingStatusType"/> <xs:element name="LNPT" type="xs:boolean"/> </xs:sequence> </xs:complexType> </xs:element> <!-- Vendor Extension element. Used within the PcspService, PcspCms, PcspMta, and PcspEndpoint objects to enable vendor extensions. Also used to extend the call feature list within the PcspService object. --> <xs:element name="Extension"> <xs:complexType> <xs:sequence> <xs:any namespace="##any" processContents="strict" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <!-- ======================= CALL FEATURES =========================== A service includes a list of call feature objects, each encoding one of the call features described in PKT-TR-VOIPBRF-R01-000608 and PKT-TR-VOIPERF-R01-000831. Each call feature includes its "static" state data (owned by the PS): Feature name (implicitly as the element name), Subscribed/non subscribed state, Administrative state the feature. Many call features include just this information. Absence of a specific call feature implies the feature is not subscribed. The subscribed state is used to indicate that an explicitly listed call feature is not subscribed (an atypical case). Several features extend the "static" parameter set with feature specific data. This feature specific data is typically configured by the user (via handset or by calling a CSR). The PCSP spec classifies the user adjustable data as "dynamic", meaning that it is owned by the CMS. Changes to the dynamic data in the CMS are not required to be pushed back to the PS. --> <!-- Always _ false/0: Subscriber may change forward-to number. true/1: Service provider (only) may change forward-to number --> <xs:element name="Always" type="xs:boolean"/> <!-- ForwardTo : Service Id to which call will be forwarded. NOTE: empty strings are allowed. --> <xs:element name="ForwardTo" type="xs:string"/> <!-- ListOfServiceId _ a list of Service Ids. --> <xs:element name="ListOfServiceId"> <xs:complexType> <xs:sequence> <xs:element name="ServiceId" type="xs:string" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <!-- ListOfSpeedDial : list of Service Ids / speed dial # pairs. Each pair contains a one or two digit speed dial number and its associated service id. --> <xs:element name="SdPair"> <xs:complexType> <xs:sequence> <xs:element name="SdNum"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:minInclusive value="0"/> <xs:maxInclusive value="99"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="ServiceId" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="ListOfSpeedDial"> <xs:complexType> <xs:sequence> <xs:element ref="SdPair" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <!-- The definition of each of the supported call features... All call features can be considered in two parts. 1. Common section containing the administrative state of the feature (the "static" data). 2. An optional section containing feature specific parameters, typically set by the end user (the "dynamic" data). --> <!-- The "base object" for all call features, containing: Subscribed _ 0/false: feature is not subscribed 1/true: feature is subscribed. UsageBilling _ 0/false: do not generate billing records on feature usage 1/true: generate billing records on feature usage. AdminStatus _ 0: feature is suspended by service provider. 1: feature is enabled by service provider.. In general, presence of a call feature implies that it is subscribed. The Subscribed flag is supported for the atypical case of wanting to indicate that an explicitly listed call feature is not subscribed. --> <xs:complexType name="CfBase"> <xs:sequence> <xs:element name="Subscribed" type="xs:boolean"/> <xs:element name="UsageBilling" type="xs:boolean" minOccurs = "0"/> <xs:element name="AdminStatus"> <xs:simpleType> <xs:restriction base="xs:int"> <xs:enumeration value="0"/> <xs:enumeration value="1"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> <!-- "CND" Calling Number Delivery --> <xs:element name="CfCND"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CNAM": Calling Name Delivery --> <xs:element name="CfCNAM"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CIDCW": Calling Identity Delivery on Call Waiting --> <xs:element name="CfCIDCW"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CW": Call Waiting --> <xs:element name="CfCW"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CCW": Cancel Call Waiting (*70) --> <xs:element name="CfCCW"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CFV": Call Forwarding Variable and Usage : Sensitive Call Forwarding (*72/*73) Extends CfBase with the following: Active : 0/false: user has deactivated feature (*73). 1/true: user has activated feature (*72). --> <xs:element name="CfCFV"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "AR": Automatic Recall (*69) --> <xs:element name="CfAR"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "AC": Automatic Callback (*66) --> <xs:element name="CfAC"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "VMWI": Visual Message Waiting Indicator Extends CfBase with the following: Indicator Type : 0: None. 1: Stutter Dial tone Only 2: Message Lamp Only 3: Both Stutter Dial tone and Message Lamp --> <xs:element name="CfVMWI"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Type"> <xs:simpleType> <xs:restriction base="xs:int"> <xs:enumeration value="0"/> <xs:enumeration value="1"/> <xs:enumeration value="2"/> <xs:enumeration value="3"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "COT": Customer Originated Trace (*57) --> <xs:element name="CfCOT"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "TWC": Three-Way Calling / Usage-Sensitive Three-Way Calling (*71) --> <xs:element name="CfTWC"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "RACF": Remote Activation of Call Forwarding --> <xs:element name="CfRACF"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "OCAA": Outside Calling Area Alerting --> <xs:element name="CfOCAA"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CIES": Calling Identity with Enhanced Screening --> <xs:element name="CfCIES"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "ACR": Anonymous Call Rejection (*77 / *87) Extends CfBase with the following: Active _ 0/false: user has deactivated feature (*87). 1/true: user has activated feature (*77). --> <xs:element name="CfACRestrict"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "AC-R": Automatic Callback _ Restrict --> <xs:element name="CfAC-R"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "ACB": Automatic Recall Blocking --> <xs:element name="CfACB"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CIDB" Calling Identity Delivery Blocking (*67 / *82). Extends CfBase with the following: Flag - "PUBLIC": deliver Caller ID info "ANONYMOUS": do not deliver Caller ID info. --> <xs:element name="CfCIDB"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Flag"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="PUBLIC"/> <xs:enumeration value="ANONYMOUS"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CFBL" Call Forwarding Busy Line ( *68 / *40 / *88 ). Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS). Active - 0/false: user has deactivated feature (*88). 1/true: user has activated feature (*68/*40). Always - see previous definition. ForwardTo - see previous definition. --> <xs:element name="CfCFBL"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="Always"/> <xs:element ref="ForwardTo" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CFDA" Call Forwarding Don't Answer (*68 / *42 / *88) Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature (*88). 1/true: user has activated feature (*68/*42). Always - see previous definition. RingPeriod - number of ringing cycles after which forwarding is activated. ForwardTo - see previous definition. --> <xs:element name="CfCFDA"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="Always"/> <xs:element name="RingPeriod" type="xs:int"/> <xs:element ref="ForwardTo" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "CFC" Call Forwarding Combination Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature (*88). 1/true: user has activated feature (*68). Always - see previous definition. RingPeriod - number of ringing cycles after which forwarding is activated. ForwardTo - see previous definition. --> <xs:element name="CfCFC"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="Always"/> <xs:element name="RingPeriod" type="xs:int"/> <xs:element ref="ForwardTo" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "SCF" Selective Call Forwarding (*63/*83). Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature (*83). 1/true: user has activated feature (*63). ListOfServiceId - list of service identifiers that will be forwarded. See previous element definition. ForwardTo - the service to which to forward. See previous element definition. --> <xs:element name="CfSCF"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="ListOfServiceId" minOccurs="0"/> <xs:element ref="ForwardTo" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "SCA" Selective Call Acceptance (*64 / *84 ). Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature (*84). 1/true: user has activated feature (*66). ListOfServiceIds - list of service identifiers that will be accepted. See previous element definition. --> <xs:element name="CfSCA"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="ListOfServiceId" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "SCR" Selective Call Rejection (*60 / *80 ). Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature (*80). 1/true: user has activated feature (*60). ListOfServiceIds - list of service identifiers that will be rejected. See previous element definition. --> <xs:element name="CfSCR"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="ListOfServiceId" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "DRCW" Distinctive Ringing/Call Waiting (*61 / *81) Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature (*81). 1/true: user has activated feature (*61). ListOfServiceIds - list of incoming service identifiers that will receive the distinctive ring treatment (vs. standard power ring or call waiting tone). See previous element definition. --> <xs:element name="CfDRCW"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="ListOfServiceId" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "SPCALL" Speed Calling (*74 / *75) Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): ListOfSpeedDial - see previous element definition. --> <xs:element name="CfSPCALL"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element ref="ListOfSpeedDial"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "RDA" Residence Distinctive Alerting Service. --> <xs:element name="CfRDA"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"/> </xs:complexContent> </xs:complexType> </xs:element> <!-- "LSR" Line Service Restriction. Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): BlkDomLongDist - block for outgoing domestic long distance calls. 0/false: not blocked. 1/true: blocked. BlkIntlLongDist - block for outgoing international long distance calls. 0/false: not blocked. 1/true: blocked. BlkPayPerCall - block for outgoing pay per calls (900/976). 0/false: not blocked. 1/true: blocked. BlkOperatorAssist - block for outgoing operator assisted calls. 0/false: not blocked. 1/true: blocked. BlkDirAssist - block for outgoing directory assistance calls. 0/false: not blocked. 1/true: blocked. BlkTollFree - block for outgoing toll free calls. 0/false: not blocked. 1/true: blocked. Active - 0/false: user has deactivated feature (*82). 1/true: user has activated feature. PIN - code to enter to deactivate blocking ServiceList - list of service identifiers for domestic long distance calls that are always allowed. --> <xs:element name="CfLSR"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="BlkDomLongDist" type="xs:boolean" minOccurs="0"/> <xs:element name="BlkIntLongDist" type="xs:boolean" minOccurs="0"/> <xs:element name="BlkPayPerCall" type="xs:boolean" minOccurs="0"/> <xs:element name="BlkOperatorAssist" type="xs:boolean" minOccurs="0"/> <xs:element name="BlkDirAssist" type="xs:boolean" minOccurs="0"/> <xs:element name="BlkTollFree" type="xs:boolean" minOccurs="0"/> <xs:element name="PIN" type="xs:string" minOccurs ="0"/> <xs:element name="Active" type="xs:boolean"/> <xs:element ref="ListOfServiceId" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "DND" Do Not Disturb Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature. 1/true: user has activated feature. WeekDayStartTod1 - week day start time for DND. WeekDayStopTod1 - week day stop time for DND. WeekDayStartTod2 - week day start time for DND. WeekDayStopTod2 - week day stop time for DND. WeekEndStartTod1 - week end start time for DND. WeekEndStopTod1 - week end stop time for DND. WeekEndStartTod2 - week end start time for DND. WeekEndStopTod2 - week end stop time for DND. --> <xs:element name="CfDND"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element name="WdStartTod1" type="xs:time" minOccurs="0"/> <xs:element name="WdStopTod1" type="xs:time" minOccurs="0"/> <xs:element name="WdStartTod2" type="xs:time" minOccurs="0"/> <xs:element name="WdStopTod2" type="xs:time" minOccurs="0"/> <xs:element name="WeStartTod1" type="xs:time" minOccurs="0"/> <xs:element name="WeStopTod1" type="xs:time" minOccurs="0"/> <xs:element name="WeStartTod2" type="xs:time" minOccurs="0"/> <xs:element name="WeStopTod2" type="xs:time" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "COC" Curfew on Calls. Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature. 1/true: user has activated feature. StartTod - start time for COC. StopTod - stop time for COC. ServiceList - list of service identifiers for incoming and outgoing services which are allowed to bypass the NSA. --> <xs:element name="CfCOC"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element name="StartTod" type="xs:time"/> <xs:element name="StopTod" type="xs:time"/> <xs:element ref="ListOfServiceId" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- "NSA" No Solicitation Announcement Extends CfBase with the following "dynamic", user adjustable parameters (owned by the CMS): Active - 0/false: user has deactivated feature. 1/true: user has activated feature. StartTod - start time for COC. StopTod - stop time for COC. ServiceList - list of service identifiers for incoming and outgoing services which are allowed to bypass the NSA. --> <xs:element name="CfNSA"> <xs:complexType> <xs:complexContent> <xs:extension base="CfBase"> <xs:sequence> <xs:element name="UserParams" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Active" type="xs:boolean"/> <xs:element name="StartTod" type="xs:time"/> <xs:element name="StopTod" type="xs:time"/> <xs:element ref="ListOfServiceId" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <!-- A list of call features. The list may contain at most 1 of each of the features outlined above, along with any vendor extension call features. --> <xs:element name="ListOfCallFeatures"> <xs:complexType> <xs:all> <xs:element ref="CfCND" minOccurs="0"/> <xs:element ref="CfCNAM" minOccurs="0"/> <xs:element ref="CfCIDCW" minOccurs="0"/> <xs:element ref="CfCW" minOccurs="0"/> <xs:element ref="CfCCW" minOccurs="0"/> <xs:element ref="CfCFV" minOccurs="0"/> <xs:element ref="CfAR" minOccurs="0"/> <xs:element ref="CfAC" minOccurs="0"/> <xs:element ref="CfVMWI" minOccurs="0"/> <xs:element ref="CfCOT" minOccurs="0"/> <xs:element ref="CfTWC" minOccurs="0"/> <xs:element ref="CfRACF" minOccurs="0"/> <xs:element ref="CfOCAA" minOccurs="0"/> <xs:element ref="CfCIES" minOccurs="0"/> <xs:element ref="CfACRestrict" minOccurs="0"/> <xs:element ref="CfAC-R" minOccurs="0"/> <xs:element ref="CfACB" minOccurs="0"/> <xs:element ref="CfCIDB" minOccurs="0"/> <xs:element ref="CfCFBL" minOccurs="0"/> <xs:element ref="CfCFDA" minOccurs="0"/> <xs:element ref="CfCFC" minOccurs="0"/> <xs:element ref="CfSCF" minOccurs="0"/> <xs:element ref="CfSCA" minOccurs="0"/> <xs:element ref="CfSCR" minOccurs="0"/> <xs:element ref="CfDRCW" minOccurs="0"/> <xs:element ref="CfSPCALL" minOccurs="0"/> <xs:element ref="CfRDA" minOccurs="0"/> <xs:element ref="CfLSR" minOccurs="0"/> <xs:element ref="CfDND" minOccurs="0"/> <xs:element ref="CfCOC" minOccurs="0"/> <xs:element ref="CfNSA" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:all> </xs:complexType> </xs:element> <!-- ======================== MAIN OBJECT DEFINITIONS ======================== There are 6 encodings defined in the PCSP schema. The 4 main object encodings: PcspCms - a CMS. A collection of Services and Endpoints. PcspService - represents a phone number, its configuration, and call features. PcspMta - represents a physical MTA and its configuration. A collection of Endpoints. PcspEndpoint - represents an Endpoint on an MTA. A PcspRelation object. This object encodes the associations between objects. A PcspImportExport object. This is used to produce a bulk loading file for the CMS. --> <!-- PcspRelation. The relation object specifies inter-object associations between the PcspCms, PcspService, PcspEndpoint, and PcspMta objects. The "relOp" attribute specified if the relation is being added or deleted. --> <xs:element name="PcspRelation"> <xs:complexType> <xs:sequence> <xs:element name="Class1" type="classType"/> <xs:element name="Key" type="xs:string"/> <xs:element name="Class2" type="classType"/> <xs:element name="ListOfKeys" type="ListOfKeys"/> </xs:sequence> <xs:attribute name="relOp" type="RelationOpType" use="required"/> </xs:complexType> </xs:element> <!-- The PcspCms object. This object maintains associations between Endpoints, Services, and their managing CMSs. Contents... CmsFqdn - FQDN uniquely identifying this CMS. --> <xs:element name="PcspCms"> <xs:complexType> <xs:sequence> <xs:element name="CmsFqdn" type="nonEmptyString"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> <!-- The PcspEndpoint object. An endpoint is a physical port on a MTA/Gateway. Contents... EndpointId - Uniquely identifies this endpoint. Format per "IPCablecom Network Based Call Signalling Protocol Specification". Example: "aaln/1@mta01.cablelabs.com" AdminStatus - 0: endpoint is disconnected 1: normal - endpoint is in service 2: test mode - endpoint is under test. Protocol - optional override for MTA protocol setting. Codec - optional override for MTA codec setting. IPSecControl - optional override for the MTA IPSecControl setting. --> <xs:element name="PcspEndpoint"> <xs:complexType> <xs:sequence> <xs:element name="EndpointId" type="nonEmptyString"/> <xs:element name="AdminStatus"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:enumeration value="0"/> <xs:enumeration value="1"/> <xs:enumeration value="2"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="Protocol" type="protocolType" minOccurs="0"/> <xs:element name="Codec" type="codecType" minOccurs="0"/> <xs:element name="IPSecControl" type="xs:boolean" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> <!-- The PcspMta object. A Media Terminal Adapter aggregates one or more endpoints (physically contained within the MTA). Contents... MtaFqdn - MTA's FQDN, uniquely identifying this MTA. MtaPort - MTA's NCS listening port (default: 2427) CmtsFqdn - FQDN of controlling CMTS. CMS needs this to establish MTA DQoS with correct CMTS. MtaProfile - MTA Profile Name - Optional; An MTA Profile Indicator identifiable by the CMS. Timezone - within which this MTA is physically located. Optional; If present overrides the CMS default setting for the time zone. Per RFC 1123 numeric timezone format. Protocol - Optional; If present it must be set to "MGCP 1.0 NCS 1.0". This is the default for all contained endpoints. Codec - Optional: if present it is the default for all contained endpoints. IPSecControl - Optional; NCS IPSec Control Flag (default = True; IPSec enabled) --> <xs:element name="PcspMta"> <xs:complexType> <xs:sequence> <xs:element name="MtaFqdn" type="nonEmptyString"/> <xs:element name="ListenPort" type="xs:int" minOccurs="0"/> <xs:element name="CmtsFqdn" type="xs:string"/> <xs:element name="MtaProfile" type="xs:string" minOccurs="0"/> <xs:element name="Timezone" type="timezoneType" minOccurs="0"/> <xs:element name="Protocol" type="protocolType" minOccurs="0"/> <xs:element name="Codec" type="codecType" minOccurs="0"/> <xs:element name="IPSecControl" type="xs:boolean" minOccurs="0"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> <!-- The PcspService object. Contents... ServiceId - unique identifier for the service. AdminStatus - 0: suspended (i.e. bill not paid). 1: enabled (normal state). 2: number has changed. 3: out of service. 4: unassigned. BillingId - An telephone number identifying another service to be billed instead of this service. ExternalId - an arbitrary string used to carry such data as subscriber ID, etc. IsPrimary - With multiple services provisioned upon an endpoint, one service MUST have this flag set to indicate the default service to use for outgoing calls. false/0: this service is not a primary service. true/1: this service is a primary service. PrimaryRing - Primary Ringing Pattern ID. Index into MTA cadence table, selecting ring pattern for this service. Optional if the "Is Primary" flag is set to False. If not present, the CMS must use its normal ring pattern DisplayName - Used for Call Name Delivery feature (CNAM) DisplayNumber - Used for Call Number Delivery feature (CND) Password - various call features require a password before any alterations are permitted. Network announcement control. See previous definition. Optional; if not present the CMS must use its default settings. Interexchange codes and Local Number Portability settings. See previous definitions. Optional; if not present the CMS must not assign any inter-exchange codes to the service. Call features. See previous definitions. --> <xs:element name="PcspService"> <xs:complexType> <xs:sequence> <xs:element name="ServiceId" type="ServiceIdType"/> <xs:element name="AdminStatus"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:enumeration value="0"/> <xs:enumeration value="1"/> <xs:enumeration value="2"/> <xs:enumeration value="3"/> <xs:enumeration value="4"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="BillingId" type="ServiceIdType"/> <xs:element name="ExternalId" type="xs:string"/> <xs:element name="IsPrimary" type="xs:boolean"/> <xs:element name="PrimaryRing" type="xs:string" minOccurs="0"/> <xs:element name="DisplayName" type="xs:string"/> <xs:element name="DisplayNumber" type="xs:string"/> <xs:element name="Password" type="xs:string"/> <xs:element ref="Announcements" minOccurs="0"/> <xs:element ref="InterExchange" minOccurs="0"/> <xs:element ref="LNP"/> <xs:element ref="ListOfCallFeatures"/> <xs:element ref="Extension" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> <!-- Import/Export file format. Used to transfer one or more objects and relations between PS/CMS. NOTE: PcspCms is not included. There is currently no reason for a CMS to obtain its own CMS object from the PS. --> <xs:element name="PcspImportExport"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element ref="PcspService"/> <xs:element ref="PcspEndpoint"/> <xs:element ref="PcspMta"/> <xs:element ref="PcspRelation"/> </xs:choice> </xs:complexType> </xs:element> </xs:schema>