Solved

MSXML

Posted on 2001-08-31
6
553 Views
Last Modified: 2008-03-17
Does the latest version MSXML parser process schemas written in the w3c format (example below) or do you have to write the schema in the microsoft format ?

<?xml version="1.0" ?>
<xsd:schema
        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        targetNamespace="http://www.bcis.co.uk/analyses/1.0"
        xmlns="http://service.bcis.co.uk/analyses/1.0"
        elementFormDefault="unqualified"
        attributeFormDefault="unqualified">

<xsd:annotation>
     <xsd:documentation xml:lang="en">
          XML schema for the exchange of elemental cost analyses of construction (building) projects.
          First draft.
                Revised 13-Jul-2001.
                Revised 23-Jul-2001: BCIS1971 should read BCIS1973; Add indexTitle attribute to Adjustment element.
                Revised 23-Aug-2001: Corrections to schema syntax.
                Revised 24-Aug-2001: Convert many elements to attributes.
                Copyright Building Cost Information Service Ltd 2001.
          Reference documentation:
          xml definitions:     w3c  http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/
     </xsd:documentation>
</xsd:annotation>


<!-- Declare high level structure:  Analyses contains set of selected analyses -->
<xsd:element name="AnalysisSet" type="as:AnalysisSetType"/>

<xsd:complexType name="AnalysisSetType">
     <xsd:sequence>
                <xsd:element name="Analysis" type="AnalysisType" minOccurs="1" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="count" type="xsd:positiveInteger"/>
        <xsd:attribute name="dateCompiled" type="xsd:date"/>
</xsd:complexType>


<!-- Definition of a single analysis starts here -->
<xsd:complexType name="AnalysisType">
     <xsd:sequence>
          <xsd:element name="Identification" type="IdentificationType" minOccurs="1" maxOccurs="10"/>
          <xsd:element name="ComplexContract" type="ComplexContractType" minOccurs="0" maxOccurs="1"/>
          <xsd:element name="BuildingDescription" type="BuildingDescriptionType" minOccurs="0" maxOccurs="10"/>
          <xsd:element name="Date" type="DateType" minOccurs="0" maxOccurs="10"/>
          <xsd:element name="Location" type="LocationType" minOccurs="0" maxOccurs="12"/>
          <xsd:element name="ContractualInformation" type="ContractualInformationType" minOccurs="0" maxOccurs="10"/>
          <xsd:element name="ProjectTenderPriceIndex" type="ProjectTenderPriceIndexType" minOccurs="0" maxOccurs="1"/>
          <xsd:element name="ContractPeriod" type="ContractPeriodType" minOccurs="0" maxOccurs="3"/>
          <xsd:element name="Tenders" type="TendersType" minOccurs="0" maxOccurs="1"/>
          <xsd:element name="ContractBreakdown" type="ContractBreakdownType" minOccurs="0" maxOccurs="2"/>
          <xsd:element name="Size" type="SizeType" minOccurs="0" maxOccurs="10"/>
          <xsd:element name="CompoundSize" type="CompoundSizeType" minOccurs="0" maxOccurs="00"/>
          <xsd:element name="FunctionalUnitSet" type="FunctionalUnitSetType" minOccurs="0" maxOccurs="10"/>
          <xsd:element name="AverageStoreyHeight" type="AverageStoreyHeightType" minOccurs="0" maxOccurs="3"/>
          <xsd:element name="DesignShapeStorey" type="DesignShapeStoreyType" minOccurs="0" maxOccurs="10"/>
          <xsd:element name="Credits" type="CreditsType" minOccurs="0" maxOccurs="10"/>
          <xsd:element name="Adjustment" type="AdjustmentType" minOccurs="0" maxOccurs="2"/>
          <xsd:element name="ElementSet" type="ElementSetType"/>
     </xsd:sequence>
        <xsd:attribute name="currency" type="xsd:token" default="GBP"/>
<!-- standard three letter currency code eg GBP -->
</xsd:complexType>

0
Comment
Question by:skhorshid
  • 3
  • 3
6 Comments
 
LVL 4

Expert Comment

by:edmund_mitchell
ID: 6444654
Hello skhorshid

The latest version MSXML parser processes schemas written in the w3c format.  When I say latest, I mean MSXML 4, which is currently in it's second beta, and not recommended for production use.  There are a number of documented bugs on the XSLT side as well as the XSD side, which I have been told will be fixed before the final release.  

As they did with XSLT, they are ceasing their support for their proprietary flavor, and throwing their weight behind the W3C spec.

If you have wasted - I mean invested ;>) a lot of effort in writing XDR schemas, MS has a utility to convert your XDR to the real deal, XSD.  It's at:

http://msdn.microsoft.com/downloads/default.asp?URL=/code/sample.asp?url=/msdn-files/027/001/539/msdncompositedoc.xml

I hope that answers your question

Edmund
0
 
LVL 2

Author Comment

by:skhorshid
ID: 6444854
Thanks,  can you answer this question aswell ?

The schema I have is in w3c format.  What parser can I use from ASP/VB environment to validate my xml using the w3c schema ?

0
 
LVL 4

Expert Comment

by:edmund_mitchell
ID: 6445248
I'm not sure I understand your question.

I think the answer to your question is:

MSXML 4

but I'm sure you know that already, so I must be missing something.

Edmund
0
3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

 
LVL 2

Author Comment

by:skhorshid
ID: 6445261
Didn't you say that you msxml4 is not recomended  for production use.  Is there another parser that can be used instead ?
0
 
LVL 4

Accepted Solution

by:
edmund_mitchell earned 50 total points
ID: 6445421
Now I understand.

Yes, MSXML4 beta 2 is not recommended for production use.
There is no other schema-aware validating parser that you can use from within the VB/ASP environment, so you'll have to go outside that environment if your need is immediate.
It's a nasty prospect - using (i.e.) Xerces-Java.
Check it out at:
http://xml.apache.org/xerces-j/schema.html


Sorry for the bad news, but MSXML 4 should be final 'soon' - (or at least that's what the MSXML-dev boys have been saying lately).

Edmund
0
 
LVL 2

Author Comment

by:skhorshid
ID: 6445433
Thanks,
I will see if I can use msxml4 for my purposes for now.
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Conditional Formatting 4 41
json format text only 4 85
any soltion create a connection to import XML file from website 4 47
XML XSL Message 3 22
The Client Need Led Us to RSS I recently had an investment company ask me how they might notify their constituents about their newsworthy publications.  Probably you would think "Facebook" or "Twitter" but this is an interesting client.  Their cons…
Many times as a report developer I've been asked to display normalized data such as three rows with values Jack, Joe, and Bob as a single comma-separated string such as 'Jack, Joe, Bob', and vice versa.  Here's how to do it. 
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question