什么是XML文档的第一行?

问题描述 投票:1回答:3

所以在我们编写XML Schema之前,很多教程都使用它:

 <?xml version='1.0'?>

要么

 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <data-set xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

我的问题是,这部分是为了什么?具体是什么网站,我们为什么要使用它?还有其他方法吗?

如果它有帮助,我这样做是为了将excel工作表转换为XML。

xml xsd
3个回答
1
投票

XML声明

<?xml version='1.0'?>是一个XML declaration,并不是特定于XSD,而是一般的XML文档。

[定义:XML文档应以XML声明开头,该声明指定正在使用的XML版本。

由于XSD是XML文档,因此它也可能具有XML声明。

以下是XML声明(XMLDecl)的BNF,其中包含其组成部分定义的链接:

XMLDecl ::= '<?xml'VersionInfo EncodingDecl? SDDecl? S? '?>'

注意:Only one XML declaration is permitted in well-formed XML, and it must be at the top if anywhere。如果您违反此要求,您将看到错误,例如

The processing instruction target matching "[xX][mM][lL]" is not allowed.

在你的XML将成为fix the problem之前你必须使用well-formed


XML模式实例命名空间

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"是特殊namespaceXML Schema instance namespace宣言。作为名称空间URI,其目的是便于控制组件名称的分组。 An XML namespace URI does not have to be retrievable

也可以看看


0
投票

XML声明。有关更多信息,请参阅https://www.w3.org/TR/2006/REC-xml-20060816/#sec-prolog-dtd


0
投票
<?xml version='1.0'?>

1.0是XML的当前版本。对于未来的版本,这个数字可能会改变。这是必填字段,它指示此文件符合的XML标准版本。

encoding="UTF-8"

这意味着该文件以UTF-8编码。这是可选的,因为这是XML中的默认字符编码。

standalone="yes"

standalone指示当前XML文档是否依赖于外部标记声明。这也是可选的。

<data-set xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

这是XML Schema Instance命名空间。声明后,您可以使用schemaLocation等属性。

看到类似的答案:Is xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" a special case in XML?

© www.soinside.com 2019 - 2024. All rights reserved.