上一页 | 下一页 |
oslc.where参数
'oslc.where'Query参数指定资源必须满足的条件; 它类似于SQL语句的WHERE子句。此参数必须附加到Enterprise Architect中的Query Capability的基URI,如下所示:
<protocol>://<server>/<model_name>/oslc/am/qc/?oslc.where=<conditions>
'oslc.where'查询参数的语法(在BNF语法中定义,并在OSLC查询语法规范中指定)是:
可以查询的资源属性是:
- dcterms:title
- dcterms:type
- dcterms:identifier
- dcterms:subject
- dcterms:creator{foaf:name} / dcterms:creator{*}
- dcterms:created
- dcterms:modified
- dcterms:description
- ss:status
- ss:complexity
- ss:stereotype{ss:name} / ss:stereotype{ss:fqname}
- ss:phase
- ss:version
- ss:language
- ss:parentresourceidentifier
- ss:resourcetype
- ss:linkedresources
例子
步骤 |
查询 |
---|---|
1 |
HTTP://localhost:480 / firebird_model / OSLC / AM / QC / oslc.where = DCTERMS:title="Class1"
检索名为“Class1”的所有资源。 |
2 |
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = dcterms:title =“Class1”and dcterms:type =“Class”
检索名为“Class1”的所有Enterprise Architect“类”类型资源。 |
3 |
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = dcterms:type =“Activity”and dcterms:created>“2018-05-01” 或者 http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = ss:resourcetype =“Element”and dcterms:type =“Activity”和dcterms:created>“2018-05-01”
检索2018-05-01之后创建的所有Enterprise Architect活动类型资源。 |
4 |
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=dcterms:creator{foaf:name}="Sparx"
备择方案: http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=dcterms:creator{foaf:name="Sparx"}
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=dcterms:creator{*}="Sparx"
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=dcterms:creator{*="Sparx"}
检索作者'Sparx'创建的所有资源。 |
5 |
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=dcterms:creator{foaf:name} in ["Sparx",”SpxSys”] 备择方案: http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = dcterms:creator {foaf:name in [“Sparx”,“SpxSys”]}
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = dcterms:[Sparx“中的创建者{*},”SpxSys“]
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = dcterms:creator {* in [“Sparx”,“SpxSys”]}
检索由Author'Sparx'或'SpxSys'创建的所有资源。 |
6 |
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = ss:stereotype {ss:fqname} =“BPMN2.0 :: Activity”
替代方案: http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = ss:stereotype {ss:fqname =“BPMN2.0 :: Activity”}
检索所有Enterprise Architect BPMN 2.0活动资源。 |
7 |
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = ss:parentresourceidentifier =“pk_ {2DFF8796-9D6F-4381-B2DC-4C7FFEB881E2}”and ss:resourcetype =“Element”
检索直接位于包含GUID {2DFF8796-9D6F-4381-B2DC-4C7FFEB881E2}的Package下的所有Enterprise Architect元素。 |
8 |
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=ss:resourcetype in ["Package","Diagram"]
检索模型中的所有Enterprise Architect包和图表。 |
9 |
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = ss:resourcetype =“Diagram and dcterms:type =”Custom“
检索模型中Enterprise Architect“Custom”类型的所有图表。
注意:要检索与图关联的图图像和图像映射,请遵循图XML的<ss:features>元素中指定的URL。 |
10 |
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=dcterms:identifier="dg_{5147E138-1F14-4738-B721-5FCC0F882FB8}"
使用Enterprise Architect GUID {5147E138-1F14-4738-B721-5FCC0F882FB8} 检索图表的所有属性。
注意:要检索与图关联的图图像和图像映射,请遵循图XML的<ss:features>元素中指定的URL。 |
11 |
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=ss:linkedresources{*=<http://localhost:480/firebird_model/oslc/am/resource/el_{B55E995C-D8EA-4fa9-9006-7932294961A9}>}
检索链接到“Class1”(具有Enterprise Architect GUID {B55E995C-D8EA-4fa9-9006-7932294961A9})的所有资源。 换句话说,这将检索具有目标端为Class1的连接器的所有包和元素。 |
12 |
http://localhost:480/firebird_model/oslc/am/qc/?oslc.where=ss:linkedresources{ss:Association=<http://localhost:480/firebird_model/oslc/am/resource/el_{B55E995C-D8EA-4fa9-9006-7932294961A9}>} 检索具有“Class1”关联链接的所有资源(具有Enterprise Architect GUID {B55E995C-D8EA-4fa9-9006-7932294961A9})。 换句话说,这将检索所有具有目标端为Class1的关联连接器的包和元素。 |
13 |
http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = name =“Class1”and dcterms:type =“Class”
返回错误响应,因为'name'不是有效的Resource Property。 |
笔记
- 此工具可通过Enterprise Architect版本13.5或更高版本下的Enterprise Architect Pro云服务器版本获得:Small Business Edition,Team Server Edition和Enterprise Server Edition
- 复合术语如'dcterms:creator'和'ss:linkedresources'仅支持比较运算符'='和'in'
- 日期必须以YYYY-MM-DD格式指定
- 在Security Enabled模型中,您需要在GET请求中提供用户身份验证令牌(通过URL中的'useridentifier'查询字符串)以检索资源/资源要素XML
学到更多
- oslc.where(在线资源)
- 用户身份验证令牌