|
next
|
Subject: Re: Stylus Studio crash - log attached Author: Henry Fang Date: 06 Feb 2002 10:38 PM
|
Carlo,
Thanks for quick response. I'm on Studio 3.1, build 069k.
Here's the steps:
1) click 'open', select myXSLT.xslt. Studio displays XSLT source correctly in "XSLT source" panel.
2) click on "XML Mapper" panel, "choose source and destination schema" window pops out, select source.dtd as source and source_feed as its root, then select target.dtd as destination and path_env as its root. Both schemas are displayed fine, with the rules also displayed.
3) click on either "XSLT source" or "params/other" panel, the crash error window pops out.
Regarding the Xalan issue, I did define the external Xalan-J processor in menu option -> Plugin Settings -> XSLT Editor -> external XSLT. Pls check the attached screenshot. Xalan is reachable on command line with the same classpath provided. Any other suggestions?
Thanks,
Henry
screenshot(1).doc
|
next
|
Subject: Re: Stylus Studio crash - log attached Author: Henry Fang Date: 07 Feb 2002 01:54 PM
|
In this case, ADD_QUOTE is used both as root element and sub-element of another element in the same XML doc. It's allowed, right?
Another question, does Studio store and display the element or attribute properties of DTD or schema (and allow user modify?), such as whether it's required, optional, empty, or even have enumerate values or value ranges? I can't find it anywhere. I'm asking 'cuz I'm losing some requirement elements on target side when those are not mapped to anything on source side. Attached is the XSLT, source/target DTD, and the output XML. As you can see, 'CNTROLAREA' is required element, but is missing in output. Any thoughts?
Sorry to strech the questions broader, really appreacite all your help!!
Henry
VegaSoft_to_OAG.xsl
VegaSoft_SourceInterface.dtd
VegaSoft_TargetInterface(1).dtd
|
next
|
Subject: Re: Stylus Studio crash - log attached Author: Minollo I. Date: 07 Feb 2002 02:06 PM
|
At 02:04 PM 2/7/2002 -0500, you wrote:
>From: "Henry Fang"
>
>In this case, ADD_QUOTE is used both as root element and sub-element of
>another element in the same XML doc. It's allowed, right?
Yes; but what's the problem with how Stylus Studio handles this? No matter
from where you start, the sub-tree below ADD_QUOTE is the same.
>Another question, does Studio store and display the element or attribute
>properties of DTD or schema (and allow user modify?), such as whether it's
>required, optional, empty, or even have enumerate values or value ranges?
>I can't find it anywhere. I'm asking 'cuz I'm losing some requirement
>elements on target side when those are not mapped to anything on source side.
It does in the DTD editor; Mapper doesn't allow you to take advantage of
that kind of information.
>Attached is the XSLT, source/target DTD, and the output XML. As you can
>see, 'CNTROLAREA' is required element, but is missing in output. Any thoughts?
As mentioned, Mapper doesn't do anything to enforce DTD/XML Schema
restrictions. As your mapping is not defining a mapping for CNTROLAREA,
that element is not created.
If CTTROLAREA only needs to be created with a fixed value, you can right
click on it and choose "Set Literal Value..."; that will force it's
creation with the specified value.
In a few hours we will have a new version fixing the crashes you have
reported yesterday night; it will also contain some additional
instrumentation to let us understand why you are being unable to run
Xalan-J debugging. I'll let you know when that's ready for download.
Thanks,
Minollo
|
next
|
Subject: Re: Stylus Studio crash - log attached Author: Henry Fang Date: 07 Feb 2002 04:49 PM
|
Minollo,
Thanks for the call. Attached are the DTDs I mentioned regarding the falttening mapping issue. The source DTD is SO_CRM.dtd, while the target is SO_ERP.dtd.
Here's the requirements: XMLDoc -> Body -> LineItemsDetails is a top repeating element, Schedules is its sub, also repeating, element. On target side, PurchaseOrderAcknowledgement ->LineItem is also a repeating element. The requirement is, its sub element 'LineNumber' (target side), needs to get values from both 'LineNumber' (source side) and 'ScheduleID', i.e., the 'LineNumber' (target side) value should be concat of 'LineNumber' (source side) and 'ScheduleID'. Besides, 'ItemNumber' (source) map to 'ItemId' (target), and 'Quantity' under 'Schedules' (source) map to 'Quantity' under 'LineItem' (target).
Hope I explained clearly. If not, feel free to contact me by phone or email.
Thanks,
Henry
SO_CRM.dtd source interface definition
SO_ERP.dtd target interface definition
SO_CRMtoERP.xsl incomplete map
|
next
|
Subject: Re: Stylus Studio crash - log attached Author: Minollo I. Date: 07 Feb 2002 06:06 PM
|
First of all: an updated 3.1 BL69l installation package is now available on:
http://www.stylusstudio.com/update
It fixes the crashes you have reported yesterday, and addresses a couple of
other issues. I would recommend that you download and install it before
doing any additional work on Stylus Studio.
This version also dumps some additional information in the struzzo.log file
when an external process (like Xalan-J processing) is spawned. If you still
have troubles in that area, please send us the most updated struzzo.log
file you have.
Back to your Mapper question.
From what I can understand, I would guess you need a block like this in
your mapping:
{xsl:for-each select="XMLDoc/Body/LineItemsDetails/LineNumber"}
{LineItem}
{!-- maybe you don't need to copy the LineNumber source value in the
target --}
{xsl:value-of select="."/}
{LineNumber}
{xsl:for-each select="../Schedules/ScheduleID"}
{!-- concatenate LineNumber (source) with ScheduleIDs --}
{xsl:value-of select="../../LineNumber"/}
{xsl:value-of select="."/}
{/xsl:for-each}
{/LineNumber}
{!-- one-to-one mapping ItemId->ItemNumber? -->
{ItemId}
{xsl:value-of select="../ItemNumber"/}
{/ItemId}
{Quantity}
{xsl:for-each select="../Schedules/Quantity"}
{!-- concatenate Quantity (repeating on source) on flat target?
weird -->
{xsl:value-of select="."/}
{/xsl:for-each}
{/Quantity}
{/LineItem}
{/xsl:for-each}
Assuming this (or something similar to this) is what you want to do, I'm
sure your next question will be: how to do that in Mapper?
Well, in Mapper you can't currently visually create blocks like
{LineNumber}
{for-each}
content
{/for-each}
{/LineNumber}
but only blocks like:
{for-each}
{LineNumber}
content
{/LineNumber}
{/for-each}
In order to let you visually create blocks with internal and not external
for-eaches, we will have to expose the concepts of text nodes in the GUI
somehow; that was something we did in past beta releases, but we removed it
because it was creating confusion; but we can probably bring it back
on-demand at least on some elements.
In the meanwhile, you can draw normal repeating arcs in Mapper, and then
move the for-each inside the generated element in the XSLT source. Build
69l which is now available fixes a problem which made Mapper mess this
change in the source when going back to Mapper.
Hope this helps; you are being an excellent source of information for us
not only to fix bugs, but also to understand in which directions we should
move in the future with the Mapper functionality in Stylus Studio.
Thanks for your patience,
Minollo
|
next
|
Subject: Re: Stylus Studio crash - log attached Author: Henry Fang Date: 07 Feb 2002 10:23 PM
|
Minollo,
1) I installed the updated version. It did fix the crash problem. :)
2) Still have the problem running external Xalan-J processor in the Studio. Attached is the log. I took a look at it, from the path info. in the log, seems the path of java.exe I specified in either Menu Option or Scenario is not picked up. And I noticed JDK 1.3 is not in my System or User path. so I added my JRE 1.3\bin to my user path, and then it worked, which confirmed my observation. Why it's not picked up? Let me know if you nedd more info. Anyway, I'm glad I found a way to get around.
3) I'll look into your instructions on the flatterning issue, try it and get back to you. I'm so impressed with the speed your guys fixing problems.
4) I mentioned to you this morning, now it looks a big issue to me: the required elements on target side are missing if it's not mapped and not assigned with a literal value. The transformation result is not acceptable 'cuz XML validation could be just the downstream operation. In real life, it could be many, maybe thousands of unmapped elements. It's a tedious and error-prone job for a user have to assign literal values to each of those elements. It would be nice the tool automatically assigns an empty literal value to all non-mapped required elements. Could you raise this as an urgent enhancement request? Let me know your thoughts.
Henry
Struzzo(79).log
|
next
|
Subject: Re: Stylus Studio crash - log attached Author: Minollo I. Date: 08 Feb 2002 09:07 AM
|
>...
>One more added regarding 4), it would be a very big plus if Studio can
>display the properties of the element/attributes so mappers have visual
>awareness during mapping, such as display uniquely for repeat elements or
>something like that. I don't quite agree what you said this morning on
>Studio should display the superset of the schema, I think it should
>display exactly what the schema defines.
We agree that Mapper should take better advantage of Schema information and
make you aware of which elements are repeatable and which not, and other
properties that we can extract from DTD/XML Schema and that could be
helpful during Mapping.
My comment yesterday about Mapper displaying a super-set of the real schema
information was mostly related to "choice" structures contained in the
schema; Mapper displays all branches of a choice, so that you have the
possibility to create a mapping to each of them. This also could be
improved, but it is how things are now: the user needs to be aware of
details about the schemas that he's trying to map. We agree this is a
sub-optimal solution, but it was a very convenient solution that allowed us
to unify the Mapper behavior when working with XML document instances, or
DTD/XML Schema documents.
So, we are aware that we are taking very limited advantage of the
information contained in a schema (really not much, as we gather the same
information we would gather from an XML document instance); there are a few
things that we can do pretty quickly, like creating default mapping for
required elements and marking repeating ones with different icons; but
being really Schema friendly will be a longer task that is not at the top
of our priorities at this point.
Thanks,
Minollo
|
next
|
Subject: RE: Stylus Studio crash - log attached Author: (Deleted User) Date: 11 Feb 2002 01:25 PM
|
Henry,
You can't find it in document, because we don't have it..:-). From
mapper GUI, you can't do condition checking like if, choose. This is in
our to do list. To perform condition checking , you have to switch to
source and modify code there. When you switch back to mapper, your
changes will not be lost...
The reason we didn't implement this feature in the first place was
because we think it might need much more steps in GUI to specify the
conditions than doing it in source. We are afraid this will make the GUI
not as easy to use...but since more and more users asking for this
feature, we are considering to have this in mapper but don't have a
definite date for it yet..
Hope this help...
song
> -----Original Message-----
> From: stylus-studio-tech Listmanager [mailto:listmanager]
> Sent: Monday, February 11, 2002 1:17 PM
> To: Recipients of 'stylus-studio-tech' suppressed
> Subject: Re: Stylus Studio crash - log attached
>
> From: "Henry Fang"
>
> Any how to do if...else condition checking? Any existing FUNCTION can
do
> that? I can't find in doc.
>
> Thanks,
> Henry
>
>
>
> To reply: mailto:stylus-studio-tech.4639@edn.exceloncorp.com
> To start a new topic: mailto:stylus-studio-tech@edn.exceloncorp.com
> To login: http://edn.exceloncorp.com/~SSDN
|
next
|
Subject: RE: Stylus Studio crash - log attached Author: Henry Fang Date: 12 Feb 2002 12:53 PM
|
Hi there, I encountered another problem with the same map. In the middle of developing a XSLT, once I defined the rules for element 'GuarAmt', I switched to Source panel from Mapper panel, no problem, I can see all my XSLT source, and when I tried to switch back, the "Choose Source and Destination Schema" window pops out, ask me to select root elements again, even if I selected the correct schema and root elements, it just stuck there and wouldn't open the mapper.
Attached is the current XSLT and source/target XSD.
Henry
FM_SourceInterface.xsd source schema, root is 'FiveFileMCODES'
IncomeExpense.xsd target XSD, root is 'IncomeExpenses'
FM_IncomeExpense_excelon.xsl
|
next
|
Subject: RE: Stylus Studio crash - log attached Author: (Deleted User) Date: 12 Feb 2002 01:31 PM
|
Henry,
Your string_length(...) should be string-length(...)
song
> -----Original Message-----
> From: stylus-studio-tech Listmanager [mailto:listmanager]
> Sent: Tuesday, February 12, 2002 1:04 PM
> To: Recipients of 'stylus-studio-tech' suppressed
> Subject: RE: Stylus Studio crash - log attached
>
> From: "Henry Fang"
>
> Hi there, I encountered another problem with the same map. In the
middle
> of developing a XSLT, once I defined the rules for element 'GuarAmt',
I
> switched to Source panel from Mapper panel, no problem, I can see all
my
> XSLT source, and when I tried to switch back, the "Choose Source and
> Destination Schema" window pops out, ask me to select root elements
again,
> even if I selected the correct schema and root elements, it just stuck
> there and wouldn't open the mapper.
> Attached is the current XSLT and source/target XSD.
>
> Henry
>
>
>
> To reply: mailto:stylus-studio-tech.4655@edn.exceloncorp.com
> To start a new topic: mailto:stylus-studio-tech@edn.exceloncorp.com
> To login: http://edn.exceloncorp.com/~SSDN
|
top
|
Subject: RE: Stylus Studio crash - log attached Author: (Deleted User) Date: 12 Feb 2002 04:35 PM
|
This is a multi-part message in MIME format.
------=_NextPart_000_0004_01C1B3E5.144C1E20
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit
We have noticed this problem and it is already fixed. Stylus will jump
to the line contains error when you try to switch rather than popping up
the schema dialog. You will see this in our next release which will be
available soon.
song
------=_NextPart_000_0004_01C1B3E5.144C1E20
Content-Type: text/html;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
font-family:Arial'>We have noticed this problem and it is already fixed. =Stylus
will jump to the line contains error when you try to switch rather than =popping
up the schema dialog. You will see this in our next release which will =be available
soon…
font-family:Arial'>
font-family:Arial'>song
------=_NextPart_000_0004_01C1B3E5.144C1E20--
|
|
|
|