Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

TIP JOSIF Main Page |TIP  JOSIF Framework  | TIP Soap Generator | TIP Soap Generator Mapping Rules - Part III

Table of Contents
outlinetrue
indent20px
stylenone
printablefalse

Mapping Rules for Datatypes

Complex datatype support

Related to issue #43 in Mantis Complex datatype support

...

We give their XSD contents:

Code Block
      <xsd:complexType name="ImpactPatterns">
	<xsd:annotation>
	    <xsd:documentation>
                Define the patterns of impact  optional . It can be other service characteristics.
                It is used when defining impact through another pattern than the pre-defined attributes above.
                This is an empty class that will be augmented/extended by specific projects
            </xsd:documentation>
	</xsd:annotation>
	<xsd:sequence>
	    <xsd:element name="description" type="xsd:string">
		<xsd:annotation>
		    <xsd:documentation>
                       Basic description of the ipact pattern.
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:element>
	    <xsd:element name="extensionInfo" minOccurs="0">
		<xsd:annotation>
		    <xsd:documentation>
			<p>A generic list of any type of elements. Used for vendor Extensions or loose element 
                           encapsulation from other namespaces.</p>
		    </xsd:documentation>
		</xsd:annotation>
	        <xsd:complexType>
		    <xsd:sequence>
			<xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
		    </xsd:sequence>
		</xsd:complexType>
	    </xsd:element>
	</xsd:sequence>
    </xsd:complexType>

Code Block
      <xsd:complexType name="ArrayOfImpactPatterns">
	<xsd:sequence>
	    <xsd:element name="item" type="tns:ImpactPatterns" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
	</xsd:sequence>
    </xsd:complexType>

Datatype

...

; abstract

Relateo issue #48 in Mantis Datatype: abstract

...

In Test1 model, org.tmforum.tip.cbe.test.AbstractDatatype has isAbstract=ture. It is mapped to XSD as:

Code Block

     <xsd:complexType name="AbstractDatatype" abstract="true">
	<xsd:annotation>
	    <xsd:documentation>
                 Example of abstract datatype
	    </xsd:documentation>
	</xsd:annotation>
	<xsd:sequence>
	    <xsd:element name="attribute0" type="xsd:string">
		<xsd:annotation>
		    <xsd:documentation>
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:element>
	    <xsd:element name="attribute1" type="xsd:string">
		<xsd:annotation>
		    <xsd:documentation>
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:element>
	    <xsd:element name="attribute2" type="xsd:string">
		<xsd:annotation>
		    <xsd:documentation>
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:element>
	</xsd:sequence>
    </xsd:complexType>

Datatype

...

; Extendability

Related to issue #17 in Mantis Datatype: isExtendable

Mapping Rule

refer to to   TIP _ Soap _ Generator _ Mapping _Rules. Rules - Part I#Mapping Rule for Extendability    If a datatype has 'tipDatatype:isExtendable=true', the generator will inject an additional element to corresponding XSD type of the datatype.

...

refer to previous example: org.tmforum.tip.cbe.problem.ImpactPatterns

Datatype

...

; inheritance

Mapping Rule

refer to to    TIP _ Soap _ Generator _ Mapping _Rules. Rules - Part I#Mapping Rule for Inheritance     Map inheritance of datatype artifacts to extension of datatype XSD types.

...

In Test1 model, org.tmforum.tip.cbe.test.TestDatatype extends org.tmforum.tip.cbe.test.AbstractDatatype. This relationship is mapped to XSD language:

Code Block
      <xsd:complexType name="TestDatatype">
	<xsd:annotation>
	    <xsd:documentation>
            </xsd:documentation>
	</xsd:annotation>
	<xsd:complexContent>
	    <xsd:extension base="tns:AbstractDatatype">
		<xsd:sequence>
		    <xsd:element name="attribute3" type="xsd:string">
			<xsd:annotation>
			    <xsd:documentation>

                            </xsd:documentation>
			</xsd:annotation>
       		    </xsd:element>
		</xsd:sequence>
	    </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>

Mapping Rules for Exceptions

Exception Base support

Related to issue #346 in Mantis Exception Base Support

...

We give structure of ExceptionBase XSD type.

Code Block

     <xsd:complexType name="ExceptionBase" abstract="true">
	<xsd:annotation>
	    <xsd:documentation>
              This is the base definition of all TIP operation exceptions.
            </xsd:documentation>
	</xsd:annotation>
	<xsd:sequence>
	    <xsd:element name="reason" type="xsd:string">
		<xsd:annotation>
		    <xsd:documentation>
      Free string to define the reason the exception was raised. It should be a short text. Might reference the step in the use case where this exception occurs, if a detailed use case was made for this operation.
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:element>
	    <xsd:element name="details" type="xsd:string">
		<xsd:annotation>
		    <xsd:documentation>
                      The more specific details about the exception. Can also be a stack trace.
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:element>
	    <xsd:element name="extensionInfo" minOccurs="0">
		<xsd:annotation>
		    <xsd:documentation>
			<p>A generic list of any type of elements. Used for vendor Extensions or loose element encapsulation from other namespaces.</p>
		    </xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
		    <xsd:sequence>
			<xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
		    </xsd:sequence>
		</xsd:complexType>
	    </xsd:element>
	</xsd:sequence>
    </xsd:complexType>

...

In Test1 model, the exception artifact org.tmforum.tip.cbe.test.TestFailure extends ExceptionBase.

Code Block
      <xsd:complexType name="TestFailure">
	<xsd:annotation>
	    <xsd:documentation>
                 Simple private exception
            </xsd:documentation>
	</xsd:annotation>
        <xsd:complexContent>
	    <xsd:extension base="exceptions:ExceptionBase">
		<xsd:sequence/>
	    </xsd:extension>
	</xsd:complexContent>
    </xsd:complexType>

Exception

...

; attribute support

Related to issue #68 in Mantis Exception: attribute support

...

All Exception artifacts are mapped to XSD complex types, and under this mapping, the attributes of artifacts are mapped to sub-elements of the XSD complex types.

For details, refer to to  TIP _ Soap _ Generator _ Mapping _RulesRules - Part I#Mapping Rule for Attributes, Association Ends, and Parameters

Example

In Test1 model, we have org.tmforum.tip.cbe.test.TestFailureWithData. Some of their attributes is of primitive type, some is of Datatype type, some is of Enumeration type, and some is of Entity type.

Code Block
      <xsd<xsd:complexType name="TestFailureWithData">
	<xsd:annotation>
	    <xsd:documentation>
               Simple private exception with data
            </xsd:documentation>
	</xsd:annotation>
	<xsd:complexContent>
     	    <xsd:extension base="exceptions:ExceptionBase">
		<xsd:sequence>
		    <xsd:element name="excep0" type="xsd:string">
			<xsd:annotation>
			    <xsd:documentation>
      
                            </xsd:documentation>
			</xsd:annotation>
		    </xsd:element>
		    <xsd:element name="excep1" type="tns:ActivityStatus">
			<xsd:annotation>
			    <xsd:documentation>
      
                            </xsd:documentation>
			</xsd:annotation>
		    </xsd:element>
		    <xsd:element name="excep2" type="tns:ImpactPatterns">
			<xsd:annotation>
			    <xsd:documentation>
      
                            </xsd:documentation>
			</xsd:annotation>
		    </xsd:element>
		    <xsd:element name="excep3" type="tns:Test">
			<xsd:annotation>
			    <xsd:documentation>
      
                            </xsd:documentation>
			</xsd:annotation>
   		    </xsd:element>
		</xsd:sequence>
	    </xsd:extension>
	</xsd:complexContent>
    </xsd:complexType>

...

[File__TestFailure.JP

Code Block
      <xsd:complexType name="TestFailure">
	<xsd:annotation>
	    <xsd:documentation>
                 Simple private exception
            </xsd:documentation>
	</xsd:annotation>
        <xsd:complexContent>
	    <xsd:extension base="exceptions:ExceptionBase">
		<xsd:sequence/>
	    </xsd:extension>
	</xsd:complexContent>
    </xsd:complexType>

Exception

...

; Inheritance

Mapping Rule

refer to [to   TIP _ Soap _ Generator _ Mapping _Rules. Rules - Part I#Mapping Rule for Inheritance  Map inheritance of exception artifacts to extension of exception XSD types.

...

In Test1 model, the exception artifact org.tmforum.tip.cbe.test.TestFailureWithData extends org.tmforum.tip.cbe.test.TestFailure, refer to previous section for definition of TestFailureWithData XSD type.

Exception

...

; Extendability

Mapping Rule

When map ExceptionBase artifact to XSD complex type, the generator will inject an additional sub-element called extensionInfo. please refer to mapping rule in section TIP_Soap_Generator_Mapping_Rules. Exception Base support  For the structure of the sub-element, please refer to TIP_Soap_Generator_Mapping_Rules.to Mapping Rule for Extendability

All other exception artifacts will be mapped to a (direct or indirect) subtype of ExceptionBase XSD type, so all exception XSD type inherit that extensionInfo sub-element. In particular, if an exception aritifact is not explicitly given an ancestor, then in XSD, we will map it to a direct subtype of ExceptionBase XSD type.

...

for examples, please refer to sections:

TIP_Soap_Generator_Mapping_Rules

TIP_Soap_Generator_Mapping_RulesException Base support 

Mapping Rule for Extendability

Mapping Rules for Notifications

...

Notification; abstract

Related to issue #64 in Mantis Notification: Abstract

...

In Test1 model, org.tmforum.tip.service.test.AbstractTestEvent has 'isAbstract=true'

Code Block


    <xsd:complexType name="AbstractTestEvent" abstract="true">
		<xsd:annotation>
			<xsd:documentation>
                           AbstractTestEvent
                        </xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="notifications:NotificationBase">
				<xsd:sequence>
					<xsd:element name="notif0" type="xsd:string">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="notif1" type="xsd:date">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="notif2" type="test:AckStatus">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
    </xsd:complexType>

Notification

...

; Notification Generic Inheritance Rule

Notifications extend from their explicitly declared extension point or from NotificationBase if there is
no extension specified.

All common notifications (AVCNotification, OCNotification, ODelNotification, ODiscNotification) are inheriting from CommonNotification.

Notification

...

; Common Notification Base Support

All common notifications (AVCNotification, OCNotification, ODelNotification, ODiscNotification) are inheriting from CommonNotification in xsd.

For example AVCNotification:

Code Block

  <xsd:complexType name="AVCNotification">
    <xsd:annotation>
      <xsd:documentation>
        <p>a generic Attribute Value Change event, ancestor of all specific Attribute Value Change
          events</p>
        <p>This notification is optional</p>
      </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="tns:CommonNotification">
        <xsd:sequence>
          <xsd:element name="extensionInfo" minOccurs="0">
            <xsd:annotation>
              <xsd:documentation> a generic list of any type of elements. Used for vendor extensions
                or loose element encapsulation from other namespaces. </xsd:documentation>
            </xsd:annotation>
            <xsd:complexType>
              <xsd:sequence>
                <xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
              </xsd:sequence>
            </xsd:complexType>
          </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>

where CommonNotification :

Code Block

 <xsd:complexType name="CommonNotification">
    <xsd:annotation>
      <xsd:documentation>
        <p>This is the root of the TIP Framework user modifiable Notification Hierarchy. All
          Notifications/Events defined by an interface designer using the TIP Framework should
          extend from CommonNotification</p>
        <p>This notification is optional</p>
      </xsd:documentation>
    </xsd:annotation>
    <xsd:complexContent>
      <xsd:extension base="notifications:CommonNotificationBase">
        <xsd:sequence> </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>

and :

Code Block

  <xsd:complexType name="CommonNotificationBase" abstract="true">
      <xsd:annotation>
         <xsd:documentation>
            <p>This is the base (abstract) definition used for all TIP common notifications. This
               type is injected by the TIP Generators into all events inheriting from
               CommonNotification.</p>
            <p>This notification is abstract</p>
            <p>This notification is optional</p>
         </xsd:documentation>
      </xsd:annotation>
      <xsd:complexContent>
         <xsd:extension base="tns:NotificationBase">
            <xsd:sequence>
               <xsd:element name="objectType" type="xsd:string" minOccurs="1" maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>
                        <p>The type (class) of the object associated with the event. This attribute
                           is needed to allow simple notification filtering based on the obj</p>
                        <p>This element is generated from an attribute.</p>
                        <p>This attribute is mandatory</p>
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
               <xsd:element name="objectId" type="entity:EntityIdentifier" minOccurs="1"
                  maxOccurs="1">
                  <xsd:annotation>
                     <xsd:documentation>
                        <p>Entity Identifier of the object associated with the event. This attribute
                           is needed to allow simple notification filtering based on the object
                           id.</p>
                        <p>This element is generated from an attribute.</p>
                        <p>This attribute is mandatory</p>
                     </xsd:documentation>
                  </xsd:annotation>
               </xsd:element>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

Notification

...

; Notification Base Support

Mapping Rule

NotificationBase (org.tmforum.tip.common.notifications.NotificationBase) is the base (abstract) definition used for all TIP notifications, and is defined in TIP Common Model. It is mapped to an XSD complex type named 'NotificationBase' in namespace http://www.tmforum.org/xml/tip/common/notifications.

...

The structure of the NotificationBase XSD type is.

Code Block
       <xsd:complexType name="NotificationBase" abstract="true">
      <xsd:annotation>
         <xsd:documentation>
            <p>This is the base (abstract) definition used for all TIP notifications.
This type is injected by the TIP Generators into code generated from Tigerstripe Event (i.e. notification) artifacts where the 'Extends' field has been left as an empty string.</p>
            <p>This notification  is  abstract</p>
            <p>This notification  is  optional</p>
         </xsd:documentation>
      </xsd:annotation>
      <xsd:sequence>
         <xsd:element name="sourceTime" type="xsd:time" minOccurs="1" maxOccurs="1">
            <xsd:annotation>
               <xsd:documentation>
                  <p>The time at which the event was reported by the source system (NE, EMS or OS).
It is the current time on the system where the event is generated.
If a system (like an EMS) is carrying forward an event generated on a NE, then the time of the source (NE in this case) should be kept.</p>
                  <p>This element is generated from an attribute.</p>
                  <p>This attribute  is  mandatory</p>
               </xsd:documentation>
            </xsd:annotation>
         </xsd:element>
      </xsd:sequence>
   </xsd:complexType>

...

In Test1 model, the notification artifact org.tmforum.tip.service.test.TestEvent extends NotificationBase.

Code Block
      <xsd:complexType name="TestEvent">
	<xsd:annotation>
	    <xsd:documentation>
                TestEVent associated to the Service Problem Interface. Can be sent by the interface in addition to standard events
            </xsd:documentation>
	</xsd:annotation>
	<xsd:complexContent>
	    <xsd:extension base="notifications:NotificationBase">
		<xsd:sequence>
		    <xsd:element name="attribute0" type="xsd:string">
			<xsd:annotation>
			    <xsd:documentation>
      
                            </xsd:documentation>
			</xsd:annotation>
		    </xsd:element>
		    <xsd:element name="attribute1" type="xsd:boolean">
			<xsd:annotation>
			    <xsd:documentation>
      
                            </xsd:documentation>
		        </xsd:annotation>
		    </xsd:element>
		    <xsd:element name="attribute2" type="test:TestAssociatedWithTestProblem">
			<xsd:annotation>
			    <xsd:documentation>
                            </xsd:documentation>
			</xsd:annotation>
		    </xsd:element>
		    <xsd:element name="attribute3" type="test:TrackingRecord">
			<xsd:annotation>
			    <xsd:documentation>
      
                            </xsd:documentation>
			</xsd:annotation>
		    </xsd:element>
		    <xsd:element name="attribute4" type="test:ClearStatus">
			<xsd:annotation>
			    <xsd:documentation>
 
                            </xsd:documentation>
			</xsd:annotation>
		    </xsd:element>
		</xsd:sequence>
	    </xsd:extension>
	</xsd:complexContent>
    </xsd:complexType>

Notification

...

; inheritance

Related to issue #65 in Mantis Notification: Inheritance

...

In Test1 model, the notification org.tmforum.tip.service.test.TestEvent which is a direct subtype of NotificationBase:

refer to section TIP_Soap_Generator_Mapping_Rules section  Notification; Notification Base Support   for examples.

Example (indirect subtype of NotificationBase)

...

Code Block
 

    <xsd:complexType name="TestEvent2">
		<xsd:annotation>
			<xsd:documentation>
                             Inherits from abstract event
                        </xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="tns:AbstractTestEvent">
				<xsd:sequence>
					<xsd:element name="attribute0" type="entity:EntityIdentifier">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
          </xsd:complexType>

Notification

...

; attribute support

Related to issue #66 in Mantis Notification: Attribute Support

...

Refer to previous examples

Notification

...

; Extendability

Mapping Rule

When map NotificationBase artifact to XSD complex type, an additional sub-element named extensionInfo is injected into. please refer to mapping rule in section TIP_Soap_Generator_Mapping_RulesNotification; Notification Base Support

All other notification artifacts will be mapped to a (direct or indirect) subtype of Notification XSD type, so they will inherit that extensionInfo sub-element. In particular, if a notification aritifact is not explicitly given an ancestor, then in XSD, we will map it to a direct subtype of Notification XSD type.

...

for examples, please refer to sections:

TIP_Soap_Generator_Mapping_Rules

TIP_Soap_Generator_Mapping_Rules

TIP_Soap_Generator_Mapping_RulesNotification; Notification Base Support

Notification; inheritance

Notification; attribute support

Mapping Rules for Enumerations

Int based Enum support

Related to issue #41 in Mantis Int based Enum support

...

The enumeration artifact is mapped to following XSD simpleType:

Code Block

    <xsd:simpleType name="AckStatus">
	<xsd:annotation>
	    <xsd:documentation>
		<p>Defines the possible values for acknowledgement.</p>
		<p>It is used to indicate whether the associated object is handled or not by the client.</p>
            </xsd:documentation>
	</xsd:annotation>
	<xsd:restriction base="xsd:string">
	    <xsd:enumeration value="ACKNOWLEDGED">
		<xsd:annotation>
		    <xsd:documentation>
          
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:enumeration>
	    <xsd:enumeration value="UNACKNOWLEDGED">
		<xsd:annotation>
		    <xsd:documentation>
          
                    </xsd:documentation>
		</xsd:annotation>
	    </xsd:enumeration>
	</xsd:restriction>
    </xsd:simpleType>

Enum

...

; abstract

Related to issue #47 in Mantis Enum: abstract

We will not use abstract enumeration in TIP model.

Enum

...

; Extendability

tipDatatype is applicable to enumeration artifacts, but we will not talk about extendability for enums.

Mapping Rules for Primitives

...

 

Please refer to XML Schema Part 2: Datatypes Second Edition (W3C Recommendation 28 October 2004) for more information about XSD anyType.

Primitive type

...

; any

Related to issue #28 in Mantis Primitive type:any

...

ServiceTest is mapped to following XSD type (note that some attributes is omitted from the picture due to limited space)

Code Block
 
     <xsd:complexType name="ServiceTest">
		<xsd:annotation>
			<xsd:documentation>
                         Test object used in test model.
                         Use to test all possible datatypes.
                       </xsd:documentation>
	        </xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="entity:EntityBase">
				<xsd:sequence>
					<xsd:element name="a_any" type="xsd:anyType">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_boolean" type="xsd:boolean">
						<xsd:annotation>
							<xsd:documentation>
                                                              dummy attribute 0
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_byte" type="xsd:byte">
						<xsd:annotation>
							<xsd:documentation>
                                                            dummy attribute 1
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_char" type="xsd:string">
						<xsd:annotation>
							<xsd:documentation>
                                                             dummy attribute 2
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_date" type="xsd:date">
						<xsd:annotation>
							<xsd:documentation>
                                                               dummy attribute 3
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_double" type="xsd:double">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_float" type="xsd:float">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_int" type="xsd:int">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_long" type="xsd:long">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_short" type="xsd:short">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_string" type="xsd:string">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="a_time" type="xsd:time">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="allDTs" type="tns:TestAllDatatypes">
						<xsd:annotation>
							<xsd:documentation>
      
                                                        </xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
    </xsd:complexType>

Primitive type

...

; boolean

Related to issue #29 in Mantis Primitive type:boolean

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; char

Related to issue #30 in Mantis Primitive type:char

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; date

Related to issue #31 in Mantis Primitive type:date

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; dateTime

TIP prifile defindes a primitive named dateTime.

Mapping Rule

Map to dateTime in XSD

Primitive type

...

; double

Related to issue #32 in Mantis Primitive type: double

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; float

Related to issue #33 in Mantis Primitive type: float

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; int

Related to issue #34 in Mantis Primitive type: int

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; long

Related to issue #35 in Mantis Primitive type: long

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; short

Related to issue #36 in Mantis Primitive type: short

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; time

Related to issue #37 in Mantis Primitive type: time

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; unknown

Related to issue #38 in Mantis Primitive type: unknown

...

Test1 model has an datatype org.tmforum.tip.service.test2.UnknownTest, it has an attribute of 'unknown' type, the generator map it to XSD 'anyURI' type, but issue following message:

Code Block

ERROR org.eclipse.tigerstripe.generators.xml.helpers.XsdReferencesMgr [25-Sept-2009 15:23:13.796] - 
Artifact 'org.tmforum.tip.service.test2.UnknownTest' has an attribute of 'unknown' type, this type is not supported.

Primitive type

...

; unsignedInteger

Related to issue #39 in Mantis Primitive type: unsignedInteger

...

Map to unsignedInt in XSD

Example

NA in Test models

Primitive type

...

; byte

Related to issue #76 in Mantis Primitive type: byte

...

Test1 model, org.tmforum.tip.service.test2.ServiceTest

Primitive type

...

; objectName

Mapping Rule

Map objectName to EntityIdentifier in XSD

Primitive type

...

; Array of Primitives

We should generate following types (in common or internal XSD) because they will be refered by attributes, association ends, or parameters:

...

ArrayOfChar

Only in JOSIF V1.1.

Primitive type

...

; Filter

Mapping Rule

Operation using primitive filters as input arguments are mapped to operations using query filters which are XPATH expressions.

refer to *TIP _ Soap _ Generator _ Mapping _ Rules _ - _ Part _ VII