Solved

MSXML

Posted on 2001-08-31
6
555 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
Webinar: Aligning, Automating, Winning

Join Dan Russo, Senior Manager of Operations Intelligence, for an in-depth discussion on how Dealertrack, leading provider of integrated digital solutions for the automotive industry, transformed their DevOps processes to increase collaboration and move with greater velocity.

 
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

How our DevOps Teams Maximize Uptime

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

Question has a verified solution.

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

The Problem How to write an Xquery that works like a SQL outer join, providing placeholders for absent data on the outer side?  I give a bit more background at the end. The situation expressed as relational data Let’s work through this.  I’ve …
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…
Are you ready to implement Active Directory best practices without reading 300+ pages? You're in luck. In this webinar hosted by Skyport Systems, you gain insight into Microsoft's latest comprehensive guide, with tips on the best and easiest way…

733 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