上一页 | 下一页 |
查询能力
客户端可以查询模型并检索与特定条件匹配的资源。在Enterprise Architect中,用于访问查询功能的基URI是:
<protocol>://<server>/<model_name>/oslc/am/qc/
应将表示特定条件的查询字符串添加到基URI并使用HTTP GET请求发送到模型。此请求的响应将采用RDF / XML格式。目前,Enterprise Architect仅支持查询Package,element和diagram属性(而不支持查询属性,操作和方案等功能)。
Enterprise Architect支持这些Query Capability参数以指定条件:
- oslc.where - 指定资源必须满足的条件,类似于SQL语句的WHERE子句
- oslc.select - 指定要检索的资源属性,类似于SQL语句的SELECT子句
这些参数可以单独使用,也可以组合使用,以指定检索资源的标准。
响应XML的元素
元件 |
描述 |
---|---|
oslc_am:资源 |
表示OSLC体系结构管理2.0资源及其属性(在资源形态中定义)。此元素上的属性“rdf:about”指定用于访问资源的URL。此URL的格式为: <protocol>:// <server> / <model_name> / oslc / am / resource / <Resource GUID With Prefix> / |
名称空间前缀为“dcterms”的元素 |
都柏林核心元数据元素集的标准属性。 |
名称空间前缀为“foaf”的元素 |
来自朋友的朋友(FOAF)词汇的标准属性。 |
名称空间前缀为'ss'的元素 |
自定义Enterprise Architect属性。 |
例子
检索模型中Actor类型的所有资源:
- URL:http:// localhost:480 / firebird_model / oslc / am / qc /?oslc.where = dcterms:type =“Actor”
响应如图所示。
<rdf:RDF>
<rdf:Description rdf:about="http://mybuildvm:2480/firebird_model/oslc/am/qc/">
<rdfs:member>
<oslc_am:Resource rdf:about="http://localhost:480/firebird_model/oslc/am/resource/el_{9EAD1087-BC1A-4b04-804F-748713D10E42}/">
<rdf:type rdf:resource="http://open-services.net/ns/am#Resource"/>
<!--Name of the Resource-->
<dcterms:title>A1</dcterms:title>
<!--Enterprise Architect Type for the Resource-->
<dcterms:type>Actor</dcterms:type>
<!--GUID of the Resource-->
<dcterms:identifier>el_{9EAD1087-BC1A-4b04-804F-748713D10E42}</dcterms:identifier>
<!--Author of the Resource-->
<dcterms:creator>
<foaf:Person>
<foaf:name>Sparx</foaf:name>
</foaf:Person>
</dcterms:creator>
<!--Created Date of the Resource-->
<dcterms:created>2018-06-21 09:40:58</dcterms:created>
<!--Modified Date of the Resource-->
<dcterms:modified>2018-07-12 15:43:28</dcterms:modified>
<!--Status of the Resource-->
<ss:status>Proposed</ss:status>
<!--Complexity of the Resource-->
<ss:complexity>Easy</ss:complexity>
<!--Phase of the Resource-->
<ss:phase>1.0</ss:phase>
<!--Version of the Resource-->
<ss:version>1.0</ss:version>
<!--Type of the Resource-->
<ss:resourcetype>Element</ss:resourcetype>
<!--GUID of the Package that contains this Actor-->
<ss:parentresourceidentifier>pk_{56DF19B4-7035-40d2-9030-21D3383562A6}</ss:parentresourceidentifier>
<!--Use this link to retrieve the Features of this Actor-->
<ss:features rdf:resource="http://localhost:480/firebird_model/oslc/am/features/el_{9EAD1087-BC1A-4b04-804F-748713D10E42}/"/>
<!--Use this link to retrieve the Connectors of this Actor-->
<ss:nestedresources rdf:resource="http://localhost:480/firebird_model/oslc/am/nestedresources/el_{9EAD1087-BC1A-4b04-804F-748713D10E42}/"/>
</oslc_am:Resource>
</rdfs:member>
</rdf:Description>
</rdf:RDF>
笔记
- 此工具可通过Enterprise Architect版本13.5或更高版本下的Enterprise Architect Pro云服务器版本获得:Small Business Edition,Team Server Edition和Enterprise Server Edition
- 在Security Enabled模型中,您需要在GET请求中提供用户身份验证令牌(通过URL中的'useridentifier'查询字符串)以检索资源/资源要素XML
学到更多
- 都柏林核心1.1(在线资源)
- FOAF(在线资源)
- OSLC查询语法(在线资源)
- oslc.where(在线资源)
- oslc.select(在线资源)
- 用户身份验证令牌