Flat file schema Create Document Type

When I create an IS document type from a flat file schema that has a default record type defined, I’m getting an extra ‘recordWithNoID’ document list in the generated document type.

Looks something like this:

recordWithNoID ( document list for default records seen before any defined record types are recognized )

record type 1
recordWithNoID ( document list child of record type 1 for default records seen after a record1 type has been recognized )

recordWithNoID ( this document list is bogus )

Has anyone else noticed this?

Regards

Hi Mark,
The ‘recordWithNoID’ comes when you don’t specify the record identifier or you have a reference of a dictionary’s record without giving it a name. So please do check out whether you have any references of a dictionary and you have named that reference.
Regards,
pradeep.

Hi,
There is a use of recordWithNoID.

If you define a record in flat file schema than while creating the string it will add the record name in each and every line.

If you use recordWithNoID than there will not be any identifier string before every line.

So use of this id depends on your requirement.

For example if you need a string strating with “H” for header and “L” for line than u should create a schema with record identifier as H and L in respective locations.

If you don’t need it than use the default recordWithNoID.

Hope it will help

Thanks

Hello,

Yes… I use recordWithNoID all of the time. My question was not about how recordWithNoID works.

It was specifically about the Integration server doctype that gets generated from the flat file schema editor.

It produces an extra recordWithNoID document within the genereated doctype.

There should be one generated at the top level, and another generated as a child of each record type.

I get TWO generated at the top level!

Capice?

Mark,

Did you specify a default record and also define a record with the name recordWithNoID?
If you specify a Default record you will get the recordWithNoID document.

Hope I interpreted your question correctly

I have created one test schema with RecordWithNoID at top level and some fields and after that there is a child record with record as recordWithNoID and created the document and it creates a record with top level name as recordWithNoID and inside that the child recordWithNoID is there. Please see the attached schema and document.

recordWithNoID at top and child level
testSchema.zip (5.2 k)

I’ll be more specific:

  1. Create a dictionary. In the dictionary create two record definitions:
    Call one FOO and the other BAR.

  2. Create a flat file schema. Set the default record from the dictionary you just created. Choose the BAR record type as the default record.

  3. Add a record type reference to FOO to the schema you just created.

  4. Generate the Integration Server doctype.

  5. In the generated IS doctype, you will see TWO document list have been created at the document’s top level and that BOTH have the name recordWithNoID. This is in addition to the recordWithNoId document list that is correctly created as a child of the FOO record type.

  6. It is invalid for two fields to exist at the same level of a document with the same name! I’ve been just deleting the extra one.