XML Reference: Siebel eBusiness Application Integration Volume V > XML Representation of Integration Object Instances >

Document Type Definitions (DTDs)


The Document Type Definition (DTD) provides metadata describing the structure of an XML document. It can be used by validating XML parsers to make sure that a given document instance conforms to the expected structure—that is, the structure defined in the DTD.

You can generate the DTD for an integration object by using the Generate Schema feature in Siebel Tools. The feature is activated by clicking the Generate Schema button in Siebel Tools after selecting a given integration object definition.

NOTE:  Attachment attributes are not supported in DTD because they are not part of the integration object definition and only appear at runtime.

The SiebelMessage element is optional. It can be omitted by selecting the No Envelope option in the Generate XML Schema wizard.

The DTD for the message header is generated in the actual XML document at run-time. The generation of this inline DTD and a reference to the external portion is enabled through the GenerateDTD parameter of the EAI XML Converter.

Here is an example of a DTD for the Sample Account integration object as generated by Siebel Tools:

<!-- Siebel DTD Generation -->
<!-- Shared Element List. These elements are guaranteed -->
<!-- to have the same datatype, length, precision, and scale.-->
<!ELEMENT Name (#PCDATA) >
<!ELEMENT Location (#PCDATA) >
<!ELEMENT Division (#PCDATA) >
<!ELEMENT Description (#PCDATA) >
<!ELEMENT CurrencyCode (#PCDATA) >
<!ELEMENT StreetAddress (#PCDATA) >
<!ELEMENT State (#PCDATA) >
<!ELEMENT PostalCode (#PCDATA) >
<!ELEMENT Country (#PCDATA) >
<!ELEMENT City (#PCDATA) >
<!ELEMENT Organization (#PCDATA) >
<!ELEMENT ListofSampleAccount (Account+) >
<!ELEMENT Account (Name?,
      Location?,
      Organization?,
      Division?,
      CurrencyCode?,
      Description?,
      HomePage?,
      LineofBusiness?, BusinessAddress?, Contact?)>
<!ELEMENT HomePage (#PCDATA) >
<!ELEMENT LineofBusiness (#PCDATA) >
<!ELEMENT BusinessAddress (BusinessAddress*) >
<!ELEMENT BusinessAddress (City?,
      Country?,
      FaxNumber?,
      StreetAddress?,
      Province?,
      State?,
      PostalCode?)>
<!ATTLIST BusinessAddress PhoneNumber CDATA #IMPLIED >
<!ELEMENT FaxNumber (#PCDATA) >
<!ELEMENT Province (#PCDATA) >
<!ELEMENT Contact (Contact*) >
<!ELEMENT Contact (CellularPhone?,
      FirstName?,
      HomePhone?,
      JobTitle?,
      LastName?,
      MiddleName?,
      Organization?,
      PersonalContact?,
      Account?,
      AccountLocation?)>
<!ELEMENT CellularPhone (#PCDATA) >
<!ELEMENT FirstName (#PCDATA) >
<!ELEMENT HomePhone (#PCDATA) >
<!ELEMENT JobTitle (#PCDATA) >
<!ELEMENT LastName (#PCDATA) >
<!ELEMENT MiddleName (#PCDATA) >
<!ELEMENT PersonalContact (#PCDATA) >
<!ELEMENT Account (#PCDATA) >
<!ELEMENT AccountLocation (#PCDATA) >

NOTE:  All fields are optional, but if present, they must appear in the correct order. The definition of a field appears only once at the beginning of the DTD, even if its XML tag appears in multiple components. When creating XML tag names for fields, the wizard only reuses a field name if all instances have the same datatype, length, precision, and scale.


 XML Reference: Siebel eBusiness Application Integration Volume V 
 Published: 23 June 2003