草庐IT

soa架构

全部标签

c# - 创建符合 XSD 架构的 XML 文档的最佳方法是什么?

我有一个XSD,我必须生成一个XML文档以发送给我合作公司的客户。我发送的文档将根据此XSD架构进行验证。创建符合XSD架构的XML文档的最佳方法是什么?我的意思是,我正在寻找最佳实践等。我是新手,在四处“谷歌搜索”时,我发现有人在使用XmlTextWriter、DataSet.WriteXml等。DataSet.WriteXml似乎不适合我。这就是我所做的:vards=newDataSet();ds.ReadXmlSchema(schemaFile);ds.Tables["TableName"].Rows.Add("","",78,true,DateTime.Now);...ds.W

xml - XInclude 架构/命名空间验证?

我正在尝试使用XMLIncludes来帮助管理需要供人和机器使用的大型XML结构。但是在尝试构建可针对现有模式进行验证的XML文件时,我遇到了无数问题。这是我正在尝试做的事情的简化示例。我的“main.xml”文件未通过验证。String“child.xml”文件可以作为独立文件进行验证。StringString这是我的架构:我的问题几乎显然与namespace有关,但我不知道如何解决我的问题。 最佳答案 正如skaffman已经指出的,XMLSchema和XInclude不兼容。来自xmllint的验证错误消息明确指出:main.

xml - 如何在我的 Xml 架构中包含 Html

我正在尝试允许Html标记作为我的一种类型的子标记。目的是允许在该类型的任何元素内使用Html标签,但对于格式良好的html不一定需要周围的html或body标签。如何将标签包含到我的XSD中? 最佳答案 如果您想在XML中与自定义元素一起使用HTML标记(即元素),则它们应该是XHTML元素。当然,您可以定义一些您自己的HTML标签,但那样会更像HTML,因为只有您自己知道这是“HTML”。(此外,您将必须根据需要定义HTML的所有元素,这将构成相当大的架构!)要让所有人知道您确实使用了HTML元素,它们必须属于XHTML命名空间

XML 架构错误 : Required white space was missing

我已经为此搜索了几个小时,但无法找出问题所在。有人可以帮我解决这个问题吗?在VB.NET2010中执行SQLXMLBULKLOAD时出现上述错误。我尝试不断更改我的xml声明、我的架构属性,但无法克服此错误。这似乎是微不足道的,但我无法弄清楚。请帮忙--> 最佳答案 属性之间需要一个空格。就像第10行中的这个。应该是 关于XML架构错误:Requiredwhitespacewasmissing,我们在StackOverflow上找到一个类似的问题: https

sql - 将 XML 架构应用于 SQL Server 会引发错误 "cannot create a row of size 8086..."

在SQLServer2005和2008中,我在编写XML模式脚本时遇到过间歇性错误。当表中的XML字段经历多次更新时,将抛出此错误:Msg511,Level16,State1,Line5Cannotcreatearowofsize8086whichisgreaterthantheallowablemaximumrowsizeof8060.错误通常发生在运行“AlterTableAlterColumnXML”语法以分离XML模式之前删除模式,重新创建它,以及另一个“AlterTableAlterColumnXML(模式名称)”重新附上它。当前的解决方法是在发生错误时重新创建表,重新运行出

XML 架构唯一子元素

我正在尝试通过元素名称验证父元素是否具有唯一的子元素。我还需要验证至少存在一个可能的元素。例子会有效但是和将无效。我试过使用xs:unique,选择当前节点,但我无法一般地选择带有field元素的元素。下面实现了我想要做的事情,但它不是我正在寻找的可靠解决方案。我希望能够添加更多类型,而无需为每次更改更改xpath。这可能吗?这是好习惯吗?任何建议将不胜感激。 最佳答案 基于XSD1.0的通用解决方案是不可能的。我不相信你的独特性也能达到​​你想要的效果,仅仅是因为一个字段的值是使用text();评估的。所以标签的名称永远不会在这方

xml - 无法在 XML 设置中添加架构 (xsd)

我正在尝试为IntelliJ中的XML添加xsd文件(模式),但是当我选择任何文件时,添加按钮被禁用。为了添加模式,我遵循了以下路径:File->Settings->Languages&Frameworks->SchemasandDTDs-(+)buttonunder'ExternalSchemasandDTDs'section请在下面找到所附图片。在此先感谢您的帮助:) 最佳答案 对话框顶部的URI字段为空。提供它,OK按钮将被启用。 关于xml-无法在XML设置中添加架构(xsd),

java - websphere ibm-web-bnd.xml 是否有新的架构位置?

这曾经工作得很好:在部署时它仍然存在,但Eclipse的validator不断显示恼人的“错误”,因为http://websphere.ibm.com/xml/ns/javaee尝试下载模式时不再指向有效站点(重定向到某些搜索站点)。我知道我可能只需要关闭对这些文件的验证,但让我先尝试询问一下:这些模式有新家吗?或者在某个地方提醒IBM他们在这方面惨遭失败......? 最佳答案 通过EclipseMarketplace安装WebSphereDeveloperTools。它会将所需的模式添加到Eclipse中的XML目录。您可以通过

xml - 如何将 XML 架构导入 "no namespace"

我这里有一个模式,我试图在其中包含/导入另一个没有命名空间的模式(这无法更改,因为它来自另一个供应商,并且不再验证他们的XML)。这是第一个架构:......还有“NO_NAME_SPACE_SHEMA_PROBLEM.xsd”可以在一定程度上改变,但不能有命名空间。问题是some-elem-from-NO_NAME_SPACE_PROBLEM_SCHEMA正在放入samp命名空间。因此,当我尝试将其编码为XML时,它会打印出这是一个大问题,因为该XML不会验证,因为它不应该有。所以我的目标是简单地将元素导入到无命名空间的命名空间中。更新1:对于造成的混淆,我深表歉意,我过去和现在都在

xml - 以编程方式将 XSD 1.1 架构转换为 XSD 1.0?

如何通过剥离所有1.1功能并仅保留与XSD1.0兼容的子集,将XSD1.1模式自动转换为XSD1.0模式?我意识到这会限制您可以利用多少XSD1.1功能,但我想象的用例是一个模式,您可以在其中发布XSD1.1版本和更兼容的XSD1.0版本,两者都描述相同的数据结构,但1.1版本有一些额外的数据完整性检查。 最佳答案 如果您正在设想同时发布1.1模式和相关的1.0模式,那么最简单和最好的方法可能是使用XSD1.1规范中描述的vc:命名空间。您可以使用vc:命名空间来标记1.1功能,例如您提到的断言(或包含它们的声明),并提供1.0等价