[Nsi-wg] Issue 94 in ogf-nsi-project: Simplify serviceAttributes definition.

ogf-nsi-project at googlecode.com ogf-nsi-project at googlecode.com
Wed Jul 3 11:25:07 EDT 2013


Status: Accepted
Owner: jmacauley
Labels: Type-Defect Priority-Medium FoundInVersion-2.0 FixedInVersion-2.0

New issue 94 by jmacauley: Simplify serviceAttributes definition.
http://code.google.com/p/ogf-nsi-project/issues/detail?id=94

Current serviceAttributes definition can consist of both type/value pairs  
or ANY elements included from other namespaces.

targetNamespace="http://schemas.ogf.org/nsi/2013/04/connection/types"

     <xsd:element name="serviceAttributes"    
type="ftypes:TypeValuePairListType" minOccurs="0" />

targetNamespace="http://schemas.ogf.org/nsi/2013/04/framework/types"

     <xsd:complexType name="TypeValuePairListType">
         <xsd:sequence>
             <xsd:element name="attribute" type="tns:TypeValuePairType"  
minOccurs="0" maxOccurs="unbounded" />
         </xsd:sequence>
     </xsd:complexType>

     <xsd:complexType name="TypeValuePairType">
         <xsd:sequence>
             <xsd:element name="value" type="xsd:string" nillable="true"  
minOccurs="0" maxOccurs="unbounded" />
             <xsd:any namespace="##other" processContents="lax"  
minOccurs="0" maxOccurs="unbounded" />
         </xsd:sequence>
         <xsd:attribute name="type" type="xsd:string" use="optional" />
         <xsd:attribute name="targetNamespace" type="xsd:anyURI"  
use="optional" />
         <xsd:anyAttribute namespace="##other" processContents="lax" />
     </xsd:complexType>

This allows us to specify the same thing two different ways.  The example  
below shows how I can specify a custom attribute "sNCP" from the SURFnet  
namespace.

     <serviceAttributes>
         <attribute>
             <surf:sNCP  
xmlns:surf="http://schemas.surfnet.nl/nsi/2013/04/services">Protected</surf:sNCP>
         </attribute>
         <attribute type="sNCP"  
targetNamespace="http://schemas.surfnet.nl/nsi/2013/04/services">
             <value>Protected</value>
         </attribute>
     </serviceAttributes>

The proposal is to flatten the serviceAttributes to contain only the ANY  
structure as follows:

targetNamespace="http://schemas.ogf.org/nsi/2013/04/connection/types"

     <xsd:element name="serviceAttributes"    
type="tns:ServiceAttributesType" minOccurs="0" />

     <xsd:complexType name="ServiceAttributesType">
         <xsd:sequence>
             <xsd:any namespace="##other" processContents="lax"  
minOccurs="0" maxOccurs="unbounded" />
         </xsd:sequence>
         <xsd:anyAttribute namespace="##other" processContents="lax" />
     </xsd:complexType>

This will restrict the protocol to a singular mechanism of attribute  
specification.


-- 
You received this message because this project is configured to send all  
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings


More information about the nsi-wg mailing list