Posted 4 months ago by Jakub Malý
Version: 19.1.0681
Avatar

Seems like Xml Syntax Editor for WPF only supports Xml Schema version 1.0. 
Xml Schema 1.0 recommendation is from 2001, 18 years old. When do you plan to add support Xml Schema 1.1?

Comments (5)

Posted 4 months ago by Actipro Software Support - Cleveland, OH, USA
Avatar

Hello,

We use the XML Schema features (e.g. XmlSchema class) in the .NET framework to drive all schema-related functionality.  From what I've seen online, it appears Microsoft only supports version 1.0 and may not have ever added version 1.1 capabilities.  I would suggest contacting Microsoft to see if version 1.1 support will be added in .NET 5 or later.


Actipro Software Support

Posted 4 months ago by Jakub Malý
Avatar

Microsoft has made known long time ago that they are not planning to update their XML stack and will stick to the historical 1.0 versions of XmlSchema, XSLT and XPath. Users who want to use the current W3C recommendations should turn to 3rd party components. As a 3rd party component provider, you should have sympathy for that approach :). Since you advertise XML support, maybe you could explore options of switching to some other underlying XML stack instead of MSFT's. 

[Modified 4 months ago]

Posted 4 months ago by Actipro Software Support - Cleveland, OH, USA
Avatar

Hello,

Can you post some details specifically about what problems you are running into and what isn't working so that we can better understand the scenario?  The more detail the better.  Thanks!


Actipro Software Support

The latest build of this product (v2019.1 build 0683) was released 2 months ago, which was before the next post in this thread.
Posted 22 days ago by Jakub Malý
Avatar

I am not sure what more information is required from me here, as the whole problem comes from the component using outdated MS implementation of XML stack, but ok... 

When you create a valid 1.1 xsd such as this one

<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'>
  <xs:simpleType name = 'SizeType' >
    <xs:restriction base = 'xs:integer' >
      <xs:assertion test = '$value != 0' />
    </xs:restriction >
  </xs:simpleType >
</xs:schema >

Your component rejects it with this message 

System.Xml.Schema.XmlSchemaException: 'The 'http://www.w3.org/2001/XMLSchema:assertion' element is not supported in this context.'

Assertions are one of the main additions to Xml Schema 1.1 standard which is a W3C recommendation since 2012 https://www.w3.org/TR/xmlschema11-1/

Many checks simply cannot be expressed with XSD 1.0. 

[Modified 22 days ago]

Posted 22 days ago by Actipro Software Support - Cleveland, OH, USA
Avatar

Hello,

I understand the frustration, but unfortunately we are at the mercy of Microsoft on this.  We are tightly integrated into the XML schema API they provide for both helping to drive our IntelliPrompt and to validate the XML.  The only alternatives are very expensive third party frameworks.  We can't integrate with those due to licensing issues.

What if you scrubbed the schema before passing it into us, removing all assertion elements?  That might be your best option here so that you could still use your 1.1 schema with our IntelliPrompt.  If you did choose to use a third party framework for validation purposes, you could write your own IXmlValidator language service that calls into it and register that on the XmlSyntaxLanguage in place of our default validator.


Actipro Software Support

Add Comment

Please log in to a validated account to post comments.