[openroad-developer] Empire XML Support - Two review
meetingtimesscheduled on May 20th 2008
Sean Thrower
Sean.Thrower at ingres.com
Tue May 20 02:53:25 PDT 2008
Bodo,
I was saving my comments for this afternoon, but seems the season opened
early.
... (don't panic) ... questions really, and mostly because if these XML
classes are exposed, developers will want to use them:-(
Regards,
Sean.
XML BILL part 1 - The New Classes.
(Part 2 Configuration Management
to follow, after)
What happens on Xdoc.AddChildElement if the element is already attached
elsewhere? Does it automatically remove that element from the other
childset?
* (please say yes)
What happens on Xel.Duplicate() ? Does it create a full unparented
branch so that you can do XdocNew.AddChildElement(
XdocTemplate.CurrentElement.Duplicate())
* (please say yes .. I realize there isn't a CurrentElement, see
below)
What about the following:
For writing to file:
- Xdoc.WriteElement()
* writes element including subelements to file: allows compromise
between writing whole doc (memory issue) and writing every last detail
(performance)
- Xdoc.SizeElement()
* returns the memory size of an element
For ordering elements (I know the order "doesn't matter", but it does
for developers and testers):
- Xel.ClientInteger
* so you can at least apply an alternative sort order
(I assume Xel.ChildElements.Sort works standardly)
- Xel.InsertClientElement(position=)
For manipulating elements, building from templates:
- Xdoc.CurrentElement(), NextElement(), FindElement()
For extensibility:
- Xatt.IsNonstandard
* so you can enforce completeness of attribute definition and
still allow for special-case extras
For error handling:
- Xdoc.ErrorNo as well as error text
General:
- some kind of comment/note capability
-----Original Message-----
From: openroad-developer-bounces at lists.ingres.com
[mailto:openroad-developer-bounces at lists.ingres.com] On Behalf Of Bodo
Bergmann
Sent: Tuesday, May 20, 2008 8:29 AM
To: Roger L. Whitcomb; openroad-developer at lists.ingres.com
Cc: Joseph C. Kronk
Subject: RE: [openroad-developer] Empire XML Support - Two review
meetingtimesscheduled on May 20th 2008
Hi Roger,
thanks for taking your time to review the specs.
See my comments/answers below (starting with "[Bodo]").
Bodo.
-----Original Message-----
From: Roger L. Whitcomb
Sent: Monday, May 19, 2008 10:50 PM
To: openroad-developer at lists.ingres.com
Cc: Joseph C. Kronk; Bodo Bergmann
Subject: RE: [openroad-developer] Empire XML Support - Two review
meeting timesscheduled on May 20th 2008
Here are some comments of mine re: the proposed spec:
OR_XML_fSpec Notes:
Pg. 14 - WriteToFile method
* I think it should have an optional parameter:
"FailIfExists=[true|false]" instead of always overwriting an existing
file of the same name.
[Bodo] There are several "WriteToFile" methods in other system classes.
None of them has an according optional parameter,
so this would be somehow "out of standard" - or we would have to add
this parameter to all the other system classes as well.
A 4GL programmer can always check the existence of a file using the
SessionObject.FileExists() method.
* What are the valid values of "indent"? Is it the number of
spaces to indent each element? (should be, 0= no indent, 1 = indent by
1, 2 = indent by 2, etc.)
[Bodo] The values are just TRUE or FALSE ("indent" or "no indent").
This is just an option of the underlying XML writer.
Pg. 15 - AbortWrite method
* What does this method do to the file on disk? Delete it?
Simply close it?
[Bodo] It will just close the file in its current state (which might be
an invalid XML).
* Would like to see a "WriteAttribute" method also instead of
having to pass all the XMLAttributes in the "WriteStartElement" call.
[Bodo] This is hardly possible as the "WriteStartElement" already writes
the ">" for the tag, so you can't write
any attributes for the tag afterwards.
Can we have a SAX equivalent read method, so that a callback is invoked
at start of element, end of element, when character data is finished,
etc.?? This provides the reverse of the write methods for XML files
that may be too big to fit into memory.
[Bodo] Actually this is something which is already "in work" - planned
as extension:
Having the ability to provide an instance of a class (as an attribute of
XMLDocument),
that implements "Callback" methods (OnStartDocument, OnStartElement,
OnEndElement, ...).
If this attribute is set, then the methods are automatically invoked
during parsing.
The methods return an integer, indicating if parsing should be cintinued
or aborted.
If you have a look at the DDS for the "XML Export" feature you will find
according information.
The extension would just be to expose the feature to a 4GL programmer,
so he can define a userclass,
which implements the callback methods.
OR_XML_DDS Notes:
Why use MSXML 4.0?? Xerces is available cross-platform, and is already
used/required by the DBMS.
[Bodo] Several reasons:
- We already use MSXML in OpenROAD for the existing XML parsing methods
-
We don't want to have two different parsers in the product.
Using Xerces would create a much bigger research project.
- It provides functionality for both parsing AND writing (not sure if
Xerces supports writing).
- Performance (the MSXML implementations, both on Windows and - using
Mainsoft - on Unix are very fast).
Roger Whitcomb | Architect, Engineering | Roger.Whitcomb at ingres.com |
Ingres | 500 Arguello Street | Suite 200 | Redwood City | CA | 94063 |
USA +1 650-587-5596 | fax: +1 650-587-5550
-----Original Message-----
From: openroad-developer-bounces at lists.ingres.com
[mailto:openroad-developer-bounces at lists.ingres.com] On Behalf Of Joseph
C. Kronk
Sent: Thursday, May 15, 2008 8:21 PM
To: openroad-developer at lists.ingres.com
Subject: [openroad-developer] Empire XML Support - Two review meeting
timesscheduled on May 20th 2008
You are invited to attend a review of the functional specification for
the XML Support project. Two meetings are scheduled to ensure the
opportunity for all OpenROAD community developers to attend. The
meetings are scheduled to run for 90 minutes. If time permits the
detailed design specification will also be reviewed. The documents can
be found at the following link:
http://community.ingres.com/wiki/Empire_Interpreter_Project
You are encouraged to review these documents and engage in an email
discussion with other members of this list prior to the review meeting
by posting to this list.
Meeting times and conference call information are given below:
Meeting #1 on Tuesday, 20-May-2008 05:30 GMT, time is in 24 hour format
Australia/Sydney 15:30
Australia/Perth 13:30
Germany 07:30
UK/London 06:30
US/California 22:30 Monday, 19-May-2008
US/New York 01:30
Meeting #2 on Tuesday, 20-May-2008 14:00 GMT, time is in 24 hour format
Australia/Sydney 00:00 Wednesday, 21-May-2008 Australia/Perth 22:00
Germany 16:00
UK/London 15:00
US/California 07:00
US/New York 10:00
Conference call dial-in information and attendee access code or pin is
given below:
Call-in toll-free number (US/Canada): 866-469-3239 Call-in number
(US/Canada): 650-429-3300 Attendee access code or pin: 15875527
Global Call-in numbers:
Calling from Call-in Numbers
India - Bharti landline toll free 000800 440 1176 India - Bharti mobile
toll free 000800 440 1177 India - Tata landline toll free 000800 440
1099 Australia toll free 1800-093-897 Australia toll 61 (0) 2 8223 9525
Austria toll free 0800-295-240 Austria toll 43 (0) 179 576 053 Belgium
toll free 0800-71083 Belgium toll 32 (0) 2700 1703 Brazil toll free
0800-891-1716 China - North toll free 10-800-712-1281 China - South toll
free 10-800-120-1281 Denmark toll free 80-884912 Denmark toll 45 3832
2993 Finland toll free 0-800-1-12585 Finland toll 358 (0) 969379744
France toll free 0800-90-5571 France toll 33 (0) 171230434 Germany toll
free 0800-101-6943 Germany toll 49 (0) 695007 3857 Greece toll free
00800-12-6759 Hong Kong toll free 800-90-3575 Hong Kong toll 852 3002
7806 Ireland toll free 1-800-882019 Ireland toll 353 (0) 12421854 Israel
toll free 1-80-9214652 Italy toll free 800-780-632 Italy toll 39 026 968
2079 Japan toll free 00531-12-1688 Japan toll 81 (0) 335708258
Luxembourg toll free 800-24981 Luxembourg toll 352 3420808135 Mexico
toll free 001-866-622-9902 Netherlands toll free 0800-022-6826
Netherlands toll 31 (0) 202 01 5078 New Zealand toll free 0800-44-8147
New Zealand toll 64 (0) 99120651 Norway toll 47 23162956 Singapore toll
free 800-120-4239 Singapore toll 65 64155103 Spain toll free 900-97-1417
Spain toll 34 914 53 3442 Sweden toll free 020-79-7251 Sweden toll 46
(0) 8587 69451 Switzerland toll free 0800-561-201 Switzerland toll 41
(0) 1800 9672 Taiwan toll free 00801-13-7644 Taiwan toll 886 (0)
6221924554 UK toll free 0800-028-8023 UK toll 44 (0) 207 365 1860 South
Korea toll free 00798-14-800-6581 South Korea toll 82 (0) 234831041
India - Tata mobile toll free 000800 440 1100
-Joe
Joseph Kronk
Director, Engineering
Ingres Corporation
joseph.kronk at ingres.com
PHONE +1 650.587.5527
FAX +1 650.587.5550
www.ingres.com
_______________________________________________
openroad-developer mailing list
openroad-developer at lists.ingres.com
http://lists.ingres.com/mailman/listinfo/openroad-developer
_______________________________________________
openroad-developer mailing list
openroad-developer at lists.ingres.com
http://lists.ingres.com/mailman/listinfo/openroad-developer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ingres.com/pipermail/openroad-developer/attachments/20080520/5fd77ad4/attachment-0001.html
More information about the openroad-developer
mailing list