Actualice las consultas para utilizar las dos formas del enlace, y para convertir el título en una serie antes de usarla o de buscar en él. Puede utilizar una vía de propiedad SPARQL para que coincida con varias alternativas. Por lo tanto, puede utilizar UNION de dos alternativas, o una vía de acceso de propiedades como prov:wasRevisionOf|dcterms:replaces para que coincida con las representaciones de 1.x y 4.0.3 y posteriores.
En las definiciones de producto donde la información de versión requiera que identifique un gráfico específico, las vías de propiedad como pd:view|^pd:isViewOf no funcionan porque las dos alternativas están en distintos gráficos. En este caso debe usar un UNION.
Si está realizando consultas para un producto con un título que incluye comillas, ampersands o el símbolo menos, esos caracteres deben ser XML codificados en la representación XMLLiteral 4.0.3 y posteriores.
Por ejemplo, la consulta siguiente muestra los productos cuyo título incluye los caracteres "auto&boat", la versión anterior y los productos hijo inmediatos de cada uno de estos productos:
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX pd: <http://jazz.net/ns/pd#>
PREFIX pd_ext: <http://jazz.net/ns/pd/extensions#>
SELECT ?parentVersion ?predecessor ?childVersion
WHERE
{
GRAPH ?parentVersion
{
?parent a pd:Item ;
dcterms:title ?title .
OPTIONAL { ?parent prov:wasRevisionOf|dcterms:replaces ?predecessor }
}
FILTER regex(str(?title),".*auto(&|&)boat.*","","i")
{
{ GRAPH ?parentVersion { ?parent pd:view ?view } }
UNION
{ ?view pd:isViewOf ?parentVersion }
}
OPTIONAL { ?view dcterms:hasPart/pd_ext:binding ?childVersion }
}
dcterms:identifier para un producto es ahora una serie exclusiva larga. Si es posible, utilice una propiedad conocida diferente del producto en las consultas. De lo contrario, actualice las consultas que utilicen dcterms:identifier para utilizar el nuevo identificador.
La versión 4.0.3 indexa datos sobre propiedades de dimensión de las ramas del producto. Por ejemplo, puede aumentar la consulta anterior para mostrar información de la dimensión (rama) para el producto padre:
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX pd: <http://jazz.net/ns/pd#>
PREFIX pd_ext: <http://jazz.net/ns/pd/extensions#>
SELECT ?parentVersion ?dtitle ?dvalue ?predecessor ?childVersion
WHERE
{
GRAPH ?parentVersion
{
?parent a pd:Item ;
dcterms:title ?title .
OPTIONAL { ?parent prov:wasRevisionOf|dcterms:replaces ?predecessor }
OPTIONAL { ?parent pd_ext:dimensions ?bn }
}
FILTER regex(str(?title),".*auto(&|&)boat.*","i")
{
{ GRAPH ?parentVersion { ?parent pd:view ?view } }
UNION
{ ?view pd:isViewOf ?parentVersion }
}
OPTIONAL { ?view dcterms:hasPart/pd_ext:binding ?childVersion }
?bn ?dimension ?dvalue .
?dimension dcterms:title ?dtitle .
}
En todas las versiones anteriores, el índice representa un usuario de dirección de correo electrónico con codificación URL incorrecta. Por ejemplo, la dirección de correo electrónico URI mailto:susan@example.com se representan en el índice como mailto:susan%40example.com. Este defecto se ha arreglado en la versión 4.0.3 de Jazz, pero no en el release 9 de DOORS. Como resultado, las consultas deben permitir ambas formas de la dirección de correo electrónico:
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX oslc_cm: <http://open-services.net/ns/cm#>
SELECT ?cr ?title ?contribMbox
WHERE {
?cr a oslc_cm:ChangeRequest ;
dcterms:type "Task"^^xsd:string ;
dcterms:title ?title ;
dcterms:contributor/foaf:mbox ?contribMbox .
FILTER regex(str(?contribMbox),"susan(@|%40)example.com")
}