XML和XMI之间的区别?

zen*_*ngr 23 xml xmi

有人可以阐明XML和XMI之间的区别吗?可以用XMI代替XML吗?

Rob*_*vey 19

XML元数据交换(XMI)是用于通过可扩展标记语言(XML)交换元数据信息的对象管理组(OMG)标准.

XMI集成了四个行业标准:

XML - eXtensible Markup Language, a W3C standard. 
UML - Unified Modeling Language, an OMG modeling standard. 
MOF - Meta Object Facility, an OMG language for specifying metamodels. 
MOF Mapping to XMI 

http://en.wikipedia.org/wiki/XML_Metadata_Interchange

因此XMI是XML的特定应用程序.

  • 问题就在于此.如果XMI是XML的应用程序,则不能使用它而不是XML.XMI有一个严格的目的,XML是一种定义标记语言的方法.这就像问你是否可以交换砖块和房子来做同样的事情. (6认同)
  • @zengr:所有XMI文件都是XML,但并非所有XML文件都是XMI. (2认同)

Rob*_*vey 7

好的,让我们再试一次.

不,您不能使用XMI代替XML. XMI XML 的特定用途.

XMI只能用于根据OMG标准交换元数据信息.XMI是XML的特定应用程序.XMI只能用于XMI目的.另一方面,XML可用于所有XML应用程序,包括XMI.

  • 你似乎并不了解XML本身毫无意义.一个人使用XML来构建他自己的标记,通过提供像XMI这样的规则.XMI*IS*XML,就像鲨鱼一样.然而,这并不意味着每条鱼都像鲨鱼一样起作用.如果您想将XMI"转换"为XML,请不要触摸该文件,您就完成了. (3认同)
  • 我讨厌说出来,但你仍然没有理解.XMI不是XML的子集; 它是XML的一个应用程序.如果你不理解这种区别,你几乎肯定会遇到问题. (2认同)

Sin*_*ico 5

XMI文档是XML文档.XML文档不一定是XMI文档.

这是一个XML文档:

<myXml>
  <myTag> myContent </myTag>
</myXml>
Run Code Online (Sandbox Code Playgroud)

但它不是XMI文档.

XMI是一种特定的XML方言.它由一组特定的标记组成,这些标记具有特定的语法和语义,旨在描述模型.