?
Solved

MSXML

Posted on 2001-08-31
6
Medium Priority
?
562 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
Learn to develop an Android App

Want to increase your earning potential in 2018? Pad your resume with app building experience. Learn how with this hands-on course.

 
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 200 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

The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

Question has a verified solution.

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

Introduction In my previous article (http://www.experts-exchange.com/Microsoft/Development/MS-SQL-Server/SSIS/A_9150-Loading-XML-Using-SSIS.html) I showed you how the XML Source component can be used to load XML files into a SQL Server database, us…
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. 
How can you see what you are working on when you want to see it while you to save a copy? Add a "Save As" icon to the Quick Access Toolbar, or QAT. That way, when you save a copy of a query, form, report, or other object you are modifying, you…
SQL Database Recovery Software repairs the MDF & NDF Files, corrupted due to hardware related issues or software related errors. Provides preview of recovered database objects and allows saving in either MSSQL, CSV, HTML or XLS format. Ensures recov…
Suggested Courses

599 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