Parsing 拉姆!包括奇怪的行为

Parsing 拉姆!包括奇怪的行为,parsing,yaml,raml,Parsing,Yaml,Raml,我使用Atom扩展来设计用RAML编写的API 我想我这里有个问题:(我屏蔽了标题和baseUri,对不起): 如果我遵循RAML 1.0规范,我应该放一个“!include”。奇怪的是,apiworkbench没有发现错误 如果我这样做: 为什么不起作用?不,对于库,不能使用include关键字 似乎规范对此不是很清楚,或者至少我在任何地方都找不到明确的规范。因此,就此提出问题将是一个好主意 但是如果您在规范中选中,您将看到在使用库(带有“uses”关键字)时,“!include”被省略

我使用Atom扩展来设计用RAML编写的API

我想我这里有个问题:(我屏蔽了标题和baseUri,对不起):

如果我遵循RAML 1.0规范,我应该放一个“!include”。奇怪的是,apiworkbench没有发现错误

如果我这样做:


为什么不起作用?

不,对于库,不能使用include关键字

似乎规范对此不是很清楚,或者至少我在任何地方都找不到明确的规范。因此,就此提出问题将是一个好主意

但是如果您在规范中选中,您将看到在使用库(带有“uses”关键字)时,“!include”被省略


否,对于库,不能使用include关键字

似乎规范对此不是很清楚,或者至少我在任何地方都找不到明确的规范。因此,就此提出问题将是一个好主意

但是如果您在规范中选中,您将看到在使用库(带有“uses”关键字)时,“!include”被省略


非常好的对话。事实上,规范应该更清楚地说明这一点,但是为什么库采用与普通
不同的方法呢!include
是指include只是将新节点添加到您曾经使用过
的现有节点中!包括
关键字。因为它实际上是一个简单的“添加”操作,所以它不会掩盖任何循环依赖关系

库非常不同,名称空间的使用(
使用
)也非常不同。库的目的是创建一组可共享的最佳实践资产/定义,人们也可以使用这些资产/定义创建自己的库或其他定义。循环依赖是不可避免的。为此,RAML工作组必须提出一种与
不同的机制!包括
。因此,对于库,您应始终使用:

uses
  lib: mylib.raml

希望这能解释它背后的合理性,但如果您还有更多问题,请告诉我。

非常好的对话。事实上,规范应该更清楚地说明这一点,但是为什么库采用与普通
不同的方法呢!include
是指include只是将新节点添加到您曾经使用过
的现有节点中!包括
关键字。因为它实际上是一个简单的“添加”操作,所以它不会掩盖任何循环依赖关系

库非常不同,名称空间的使用(
使用
)也非常不同。库的目的是创建一组可共享的最佳实践资产/定义,人们也可以使用这些资产/定义创建自己的库或其他定义。循环依赖是不可避免的。为此,RAML工作组必须提出一种与
不同的机制!包括
。因此,对于库,您应始终使用:

uses
  lib: mylib.raml

希望这能解释它背后的合理性,但如果您还有更多问题,请告诉我。

上的示例用一个简单的例子清楚地展示出来!包括。。。当我阅读说明书时,不清楚这一点。示例使用!包括类型、特征、资源类型等,但在使用“uses”关键字时不包括在内,在这些示例中,您将看到“!include”被省略。上的示例用一个!包括。。。当我阅读说明书时,不清楚这一点。示例使用!包括类型、特征、资源类型等,但不包括在使用“uses”关键字时,在这些示例中,您将看到省略了“!include”。