Table of contents
TOC
Collapse the table of content
Expand the table of content
Última actualización: 29/06/2018

Realizar consulta en Office Graph con GQL y las API de REST de búsqueda de SharePoint Online

Se aplica a: Office 365 | Programa Office 365 First Release| SharePoint en línea

Las API se descontinuarán el 31 de agosto de 2017

Los desarrolladores pudieron experimentar con la versión preliminar de GQL y las API REST de búsqueda de SharePoint Online para realizar consultas en Office Graph durante bastante tiempo. Las API de Insights, junto con otras API expuestas en Microsoft Graph, como la API de Contactos, debe usarse como reemplazo.

Animamos a los desarrolladores que crearon aplicaciones en la versión preliminar de la API a que migren a las API de Microsoft Graph antes de dicha fecha. A continuación, se pueden ver ejemplos de llamadas a la API de Microsoft Graph que devuelven datos similares a las API de GQL de Office Graph.

Pasos requeridos antes del 19 de junio de 2017

Como primer paso de la descontinuación, hemos introducido un parámetro de consulta EnableLegacySPOGraph. Se deben establecer en true las llamadas a las API de GQL a partir del 19 de junio de 2017.

  • El 19 de junio de 2017, las API dejarán de funcionar sin el parámetro.
  • Las API dejarán de funcionar por completo el 31 de agosto de 2017.

Ejemplo de llamada sin el parámetro requerido:

https://<tenant_address>/_api/search/query?querytext='QUERY'&properties='GraphQuery:and(ACTOR(ME\,action\:1020)'

Ejemplo de llamada con el parámetro requerido:

https://<tenant_address>/_api/search/query?querytext='QUERY'&properties='GraphQuery:and(ACTOR(ME\,action\:1020),EnableLegacySPOGraph:true'

Migración a las API de Microsoft Graph

Tipos de acciones por separado y API de Microsoft Graph que devuelven resultados similares.

OrgManager (1013)

Reemplazado por una llamada a la API Obtener administrador.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1013)'
  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR({ActorId}\,action\:1013)'

Microsoft Graph

  • GET https://graph.microsoft.com/v1.0/me/manager
  • GET https://graph.microsoft.com/v1.0/users/{user id/user principal name}/manager

Resultados más valiosos:

  • GET https://graph.microsoft.com/beta/me/manager
  • GET https://graph.microsoft.com/beta/users/{user id/user principal name}/manager

También se puede devolver al usuario completo y expandir la manager propiedad de navegación:

  • GET https://graph.microsoft.com/beta/users/{user id/user principal name}?$expand=manager

Más información sobre el uso de la API de administrador

OrgDirect (1014)

Reemplazado por una llamada a la API Enumerar subordinados.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1014)'
  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR({ActorId}\,action\:1014)'

Microsoft Graph

  • GET https://graph.microsoft.com/v1.0/me/directReports
  • GET https://graph.microsoft.com/v1.0/users/{user id/user principal name}/directReports

Resultados más valiosos:

  • GET https://graph.microsoft.com/beta/me/directReports
  • GET https://graph.microsoft.com/beta/users/{user id/user principal name}/directReports

También se puede devolver una consulta para un usuario y expandir la directReports propiedad de navegación:

  • GET https://graph.microsoft.com/beta/users/{user id/user principal name}?$expand=directReports

Más información sobre el uso de la API de administrador

Más información sobre el uso de la API de subordinados

OrgColleague (1015)

Reemplazado por una llamada a las API Obtener administrador y Enumerar subordinados.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1015)'
  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR({ActorId}\,action\:1015)'

Microsoft Graph

Devuelve al administrador y luego a los subordinados del administrador.

  1. GET https://graph.microsoft.com/v1.0/users/{user id/user principal name}/manager
  2. GET https://graph.microsoft.com/v1.0/users/{user id/user principal name}/directReports

Más información sobre el uso de la API de administrador

Más información sobre el uso de la API de subordinados

OrgSkipLevelManager (1016)

Reemplazado por las dos llamadas a la API Obtener administrador.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1016)'
  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR({ActorId}\,action\:1016)'

Microsoft Graph

  1. GET https://graph.microsoft.com/v1.0/users/{user id/user principal name}/manager

Más información sobre el uso de la API

WorkingWith (1019)

Reemplazado por la API Contactos.

Ordenado por relevancia de forma predeterminada. Rank Propiedad expuesta como parte del tipo de recurso rankedEmailAddress en la respuesta. Un valor de clasificación más alto se corresponde con un resultado más relevante. La relevancia viene determinada por la comunicación, colaboración y las señales de relación empresarial.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1019)'

Microsoft Graph

  • GET https://graph.microsoft.com/beta/me/people/

Más información sobre la API Contactos

WorkingWithPublic (1033)

Reemplazado por la API Contactos.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR({ActorId}\,action\:1033)'

Microsoft Graph

  • GET https://graph.microsoft.com/beta/users/{user id/user principal name}/people/

Más información sobre la API Contactos

RecentlyViewed (1001)

Reemplazado por la API Usados.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1001)'

Microsoft Graph

Reemplazado por la API Usados.

  • GET https://graph.microsoft.com/beta/me/insights/used

Más información sobre la API Usados

Modified (1003)

Reemplazado por la API Usados.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1003)'
  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR({ActorId}\,action\:1003)'

Microsoft Graph

Reemplazado por la API Usados.

  • GET https://graph.microsoft.com/beta/me/insights/used?$orderby=LastUsed/LastModifiedDateTime
  • GET https://graph.microsoft.com/beta/users/{user id/user principal name}/insights/used?$orderby=LastUsed/LastModifiedDateTime

Más información sobre la API Usados

TrendingAround (1020)

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1020)'
  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR({ActorId}\,action\:1020)'

Microsoft Graph

Reemplazado por la API Tendencias.

  • GET https://graph.microsoft.com/beta/me/insights/trending
  • GET https://graph.microsoft.com/beta/users/{user id/user principal name}/insights/trending

Más información sobre la API Tendencias

PersonalFeed (1021)

Reemplazado por la API Tendencias.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1021)'

Microsoft Graph

Reemplazado por la nueva API Tendencias.

  • GET https://graph.microsoft.com/beta/me/insights/trending

Más información sobre la API Tendencias

Received (1049)

Reemplazado por la API Compartidos.

GQL

  • https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1049)'

Microsoft Graph

  • GET https://graph.microsoft.com/beta/me/insights/shared

Más información sobre la API Compartidos

Contenido preliminar

Usa las API de Microsoft Graph en su lugar. Echa un vistazo a Microsoft Graph. El siguiente contenido se aplica a Office Graph, que se encuentra actualmente en Versión preliminar. Esta API se descontinuó el 31 de agosto de 2017.

Office Graph calcula información por medio de Office 365 y pone a tu disposición esta información a través de Microsoft Graph, el único punto de conexión que puedes usar para acceder a varias tecnologías de la nube de Microsoft. Actualmente, puedes realizar consultas para la siguiente información de Office Graph:

El lenguaje de consulta de gráfico (GQL) es un lenguaje de consulta en versión preliminar diseñado para realizar consultas en Office Graph a través de la API de REST de búsqueda de SharePoint Online. Al usar GQL, puedes realizar consultas en Office Graph para obtener elementos para un actor que cumpla un filtro en particular.

Nota Las características y las API documentadas en este artículo se encuentran en versión preliminar y están sujetas a cambios. Las adiciones actuales a la API de REST de búsqueda constituyen una solución preliminar para hacer posible la consulta de Office Graph, principalmente para la experiencia Office Delve. No dudes en experimentar con la consulta de Office Graph, pero no uses estas características, ni otras características ni API documentadas en este artículo en producción. Tus comentarios sobre estas características y API son importantes. Danos tu opinión. Conéctate con nosotros en Desbordamiento de pila. Etiqueta tus preguntas con [Office365].

Office Graph representa las relaciones entre objetos de empresa como bordes

Office Graph contiene información sobre objetos de empresa, como personas y documentos, así como las relaciones e interacciones entre estos objetos. Las relaciones e interacciones se representan como bordes.

Algunos bordes representan una única interacción:

  • Modified — Carl modificó un documento.
  • Viewed — Jarvis vio una presentación.

Algunos bordes se calculan sobre la base de interacciones múltiples:

  • WorkingWith — Los contactos con los que interactúas con frecuencia.
  • TrendingAround — Los elementos que son populares en tu círculo de colegas.

Algunos bordes son relaciones entre objetos de empresa:

  • OrgManager, OrgColleague, etc. — Bordes de estructura organizacional.

Echa un vistazo a Tipos de acciones disponibles para obtener una lista de los bordes actuales de Office Graph y sus descripciones.

La ilustración 1 muestra el aspecto de la búsqueda de Office Graph, donde se recopila la información a través de la actividad en todos los servicios de Office 365 y se procesa para crear bordes. Actualmente, la información en Office Graph se recopila de SharePoint Online, OneDrive para la Empresa, Exchange Online, Microsoft Azure Active Directory y Delve.

Ilustración 1. Una vista simplificada del aspecto de la búsqueda de Office Graph y Delve, la experiencia principal que ofrece

El aspecto de la búsqueda de Office Graph y Delve, la experiencia principal que ofrece.

El modelo de datos de Office Graph y las propiedades de borde

Al igual que con cualquier gráfico, cada borde de Office Graph tiene un nodo de origen y un nodo de destino. El nodo de origen se llama actor y el nodo de destino se llama objeto.

Ilustración 2. La relación entre actor, borde y objeto

Cada borde tiene un nodo de origen (el actor) y un nodo de destino (el objeto).

Los bordes tienen las propiedades enumeradas en la Tabla 1.

Tabla 1. Descripciones de las propiedades de los bordes y sus tipos

PropiedadTipoDescripción
ActorIdEnteroEl id. del actor.
ObjectIdEnteroEl id. del objeto.
Action typeEnteroUn id. que identifica el tipo de acción o relación que representa el borde. Los tipos de acciones importantes se enumeran en Tipos de acciones disponibles.
TimeCadenaUna marca de hora del borde; basada en el estándar ISO 8601. La semántica de la marca de hora depende del tipo de borde. Echa un vistazo a Tipos de acciones disponibles.
WeightEnteroUn número que indica la importancia del borde. La semántica del peso depende del tipo de borde. Echa un vistazo a Tipos de acciones disponibles.
BlobBlobSolo para uso interno.
BlobContentCadenaSolo para uso interno.
ObjectSourceEnteroSolo para uso interno.

Los nodos en Office Graph tienen las mismas propiedades administradas que se definen en el esquema de búsqueda de SharePoint Online. Puedes recuperar las propiedades Retrievable usando la propiedad de consulta SelectProperties.

Extensiones de consulta de Graph en la API de REST de búsqueda de SharePoint Online

Puedes realizar una consulta en Office Graph por medio de la API de REST de búsqueda de Sharepoint Online introduciendo dos nuevas propiedades en el contenedor de propiedades de consulta: GraphQuery y GraphRankingModel. La propiedad GraphQuery está escrita en GQL.

Puedes combinar GraphQuery y GraphRankingModel con los otros parámetros de consulta con los que estás familiarizado desde la búsqueda de SharePoint Online, excluyendo los refinadores y las plantillas de consulta.

Normalmente, cuando realizas una consulta en Office Graph, deseas buscar elementos relacionados con otros elementos y recuperar información sobre estos elementos y sus relaciones. Por ejemplo, deseas consultar al gráfico "todo lo relacionado con Carl Steadman" o "todos los elementos modificados por Jarvis Ferro".

Figura 2. Una llamada de consulta de gráfico típica a través de REST

En una consulta de gráfico, puede usar un elemento de contenido (Querytext) y un elemento de gráfico (GraphQuery). La propiedad GraphQuery está especificada como parte de Propiedades.

Una consulta de gráfico puede contener tanto una parte de contenido (Querytext) como una parte gráfica (GraphQuery). Puedes usarlos para realizar una búsqueda combinada de los contenidos de un elemento completo y las interacciones que los contactos han tenido con este elemento en particular. La propiedad Querytext es obligatoria. Si deseas hacer coincidir todos los elementos sin filtrar ninguna parte del contenido, puedes usar un asterisco (*).

GQL tiene un operador principal: ACTOR. El operador ACTOR encuentra todas las acciones del actor proporcionado que cumplen un filtro y luego devuelve todos los objetos para dichas acciones. Por ejemplo, para devolver los documentos modificados por Carl Steadman (suponiendo que ActorId = 1234 para Carl Steadman), puedes dividir esta información en:

  • Carl Steadman es el ACTOR.

  • Modificar es la acción con id. = 1003.

  • Documento es el objeto que se devuelve en el resultado.

A continuación, puedes escribir la siguiente consulta.

ACTOR(1234, action:1003)

A continuación, se muestra la sintaxis para el operador ACTOR.

ACTOR(<ActorId> [, filter])

El ActorId es el id. del nodo para el que deseas buscar las acciones. El filtro es un predicado aplicado a todos los bordes salientes del actor. El filtro se crea usando Action, Timey Weight de la Tabla 1 en combinación con los operadores booleanos: AND, NOTy OR. El resultado de la consulta son los objetos de todos los bordes que coinciden con el filtro.

Puedes combinar los operadores ACTOR con los operadores AND y OR. Por ejemplo, para devolver todos los elementos modificados por Jarvis Ferro ( ActorId = 1234) y Austin Ingalls ( ActorId = 5678), debes escribir lo siguiente.

AND(ACTOR(1234, action:1003), ACTOR(5678, action:1003))

Escribes lo siguiente para devolver todos los elementos modificados por Jarvis Ferro o Austin Ingalls.

OR(ACTOR(1234, action:1003), ACTOR(5678, action:1003))

Cuando escribes consultas de gráficos que requieren que uses el ActorId del usuario autenticado, puedes usar la macro ME como sustituto equivalente. Por ejemplo, para devolver los documentos modificados por el usuario autenticado, escribe lo siguiente.

ACTOR(ME, action:1003)

Tipos de acciones disponibles

Tabla 2. Tipos de acciones y sus descripciones

Tipo de acciónDescripciónVisibilidadId.PesoMarca de hora
PersonalFeedLa fuente personal del actor tal como se muestra en su vista Inicio en Delve.Privado1021Un número de secuencia.Cuando se agregó el elemento a la fuente en la vista Inicio en Delve.
ModificadoElementos que el actor ha modificado en los últimos tres meses.Público1003El número de modificaciones.Última modificación.
OrgColleagueTodos los que responden ante el mismo administrador que el actor.Público1015Siempre 1.-
OrgDirectLos subordinados del actor.Público1014Siempre 1.-
OrgManagerLa persona frente a la que responde el actor.Público1013Siempre 1.-
OrgSkipLevelManagerEl administrador de nivel superior del actor.Público1016Siempre 1.-
workingWithContactos con los que actor se comunica o con los que trabaja frecuentemente.Privado1019Una puntuación de relevancia.-
TrendingAroundElementos populares entre los contactos con los que trabaja el actor o con los que se comunica frecuentemente.Público1020Una puntuación de relevancia.-
ViewedElementos vistos por el actor en los últimos tres meses.Privado1001El número de vistas.Visto por última vez.
WorkingWithPublicUna versión pública del borde WorkingWith.Público1033Un número de secuencia.-

Ejecución de consultas de gráficos frente a SharePoint 2013

Para realizar consultas en Office Graph, debes agregar la GraphQuery al contenedor de propiedades de la clase KeywordQuery. El valor de esta propiedad debe ser la cadena de consulta de gráfico en formato GQL. Para consultar el id. de una persona (ActorId), como Carl Steadman (username:carls), puedes escribir la siguiente consulta de REST.

https://<tenant_address>/_api/search/query?Querytext='Username:carls'&amp;SourceId='b09a7990-05ea-4af9-81ef-edfab16c4e31'&amp;SelectProperties='UserName,DocId'

Nota El origen de resultados que se utilizará para ejecutar una consulta en particular es el SourceId; b09a7990-05ea-4af9-81ef-edfab16c4e31 es el id. para el origen de resultados en la Búsqueda de personas.

El resultado contiene el id. de la persona (DocId=21865248), tal como se muestra.

<d:element m:type="SP.KeyValue">
    <d:Key>DocId</d:Key>
    <d:Value>21865248</d:Value>
    <d:ValueType>Edm.Int64</d:ValueType>
</d:element>

Ejemplos

Los siguientes ejemplos muestran cómo puedes escribir consultas para un actor único y para varios actores en Office Graph. En estos ejemplos se usa Carl como actor con ActorId: 2962.

Los resultados devueltos por estas consultas pueden contener un máximo de diez elementos, ya que ese es el número predeterminado. Puedes aumentar el número de resultados con la propiedad RowLimit (), tal como se muestra en este ejemplo.

Consultas para un único actor

  • Los diez primeros elementos relacionados contigo.

    Sintaxis: ACTOR(ME)

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME)'
  • Los diez primeros elementos relacionados con Carl.

    Sintaxis: ACTOR(2962)

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(2962)'
  • Tu administrador.

    Sintaxis: ACTOR(ME, action:1013)

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1013)'
  • Los diez primeros elementos que modificaste o viste recientemente.

    Sintaxis: ACTOR(ME, OR(action:1001,action:1003))

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,OR(action\:1001\,action\:1003))'
  • Los diez primeros elementos que modificaste el 15 de agosto de 2014.

    Sintaxis: ACTOR(ME, AND(action:1003, time:datetime(2014-08-15)))

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,AND(action\:1003\,time\:datetime(2014-08-15)))'
  • Los diez primeros elementos que modificaste a partir del 26 de junio de 2014.

    Sintaxis: ACTOR(ME, AND(action:1003, time:range(datetime(2014-06-26),max)))

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,AND(action\:1003\,time\:range(datetime(2014-06-26)\,max)))'

Consultas para varios actores

  • Los diez primeros elementos relacionados contigo y Carl.

    Sintaxis: AND(ACTOR(ME), ACTOR(2962))

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:AND(ACTOR(ME)\,ACTOR(2962))'
  • Los diez primeros elementos relacionados con Carl.

    Sintaxis: OR(ACTOR(ME), ACTOR(2962))

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:OR(ACTOR(ME)\,ACTOR(2962))'
  • Los diez primeros elementos que viste recientemente y que Carl modificó recientemente.

    Sintaxis: AND(ACTOR(ME, action:1001), ACTOR(2962, action:1003))

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:AND(ACTOR(ME\,action\:1001)\,ACTOR(2962\,action\:1003))'

Comprender el formato de resultado de la consulta de gráfico

El formato del resultado para las consultas de gráficos es similar al resultado de las consultas de búsqueda, con una columna adicional, Edges, como parte de RelevantResultResultTable devuelto por las API de consulta de búsqueda de SharePoint 2013. El formato de Edges es una matriz de bordes serializados en JSON.

Por ejemplo, la siguiente consulta solicita la lista de personas con las que un actor en particular (ActorId: 21894957) trabaja (ActionId: 1033).

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='Graphquery:ACTOR(21894957\,action\:1033)'&amp;SelectProperties='Docid,Title'

El resultado es la siguiente estructura XML, que contiene Edges y otros elementos. En este ejemplo, solo se devuelve un elemento Edges.

<d:element m:type="SP.KeyValue">
    <d:Key>Edges</d:Key>
    <d:Value>[{"ActorId":21894957,"ObjectId":21900499,
        "Properties":{"Action":1033,"Blob":[],
        "ObjectSource":1,"Time":"2013-12-02T13:56:25.5979646Z",
        "Weight":61}}]
    </d:Value>
    <d:ValueType>Edm.String</d:ValueType>
</d:element>

Control de acceso a las consultas de gráficos

Las consultas de gráficos poseen los mismos mecanismos de control de acceso que las consultas de búsqueda. Una consulta de gráfico devuelve solo los elementos a los que tiene acceso el usuario.

Office Graph también proporciona un mecanismo de control de acceso para todos sus bordes. Cada tipo de acción de un borde en el gráfico puede ser privado o público. Los bordes públicos son visibles para todos los usuarios de la organización. Los bordes privados son visibles solo para el actor. Estos se omiten cuando otro usuario realiza una consulta de gráfico. Por ejemplo, Carl Steadman puede realizar una consulta en Office Graph para los elementos que él vio. Si otro usuario realiza esta consulta con el ActorId de Carl Steadman, obtendrá un resultado vacío. La columna Visibilidad de la Tabla 2 enumera los tipos de acción que son públicos y los que son privados.

Ejemplos de consulta avanzada

Puedes escribir consultas de gráficos de varias maneras diferentes para realizar tareas diferentes. Los siguientes ejemplos están destinados a proporcionar una guía sencilla para saber cómo puedes escribir estas consultas avanzadas.

Combinar la propiedad GraphQuery con otras propiedades de consulta

Ejemplo 1: Los diez primeros elementos relacionados contigo o Carl e incluyen las propiedades DocId y Edges en los resultados.

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:OR(ACTOR(ME)\,ACTOR(2962))'&amp;SelectProperties='DocId,Edges'

Nota Recibirás más propiedades en el resultado que solo DocId y Edges; por ejemplo, RankId y PartitionId. Esto se debe a que estas son las propiedades predeterminadas que devuelve el servicio de búsqueda.

Ejemplo 2: Los 100 primeros elementos relacionados contigo o Carl.

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:OR(ACTOR(ME)\,ACTOR(2962))'&amp;RowLimit=100

Los bordes que obtienes como resultado de la consulta de gráfico son aquellos que solicitaste específicamente en la consulta. Pero, en algunos casos, es posible que desees recuperar tipos de bordes adicionales sin que esto afecte a los documentos devueltos en el resultado de la consulta.

Ejemplo 3: recuperar todos los documentos relacionados contigo (ActionId: 1020) y también devolver información sobre si viste o modificaste estos documentos. Puedes hacer esto con la construcción booleana que se muestra a continuación.

Sintaxis: AND( ACTOR(ME, action:1020), ACTOR(ME, OR(action:1020,action:1001,action:1003)))

https://<tenant_address>/_api/search/query?Querytext='*'&Properties='GraphQuery:AND(ACTOR(ME\,action\:1020)\,ACTOR(ME\,OR(action\:1020\,action\:1001\,action\:1003)))'&SelectProperties='Docid,Title'

Usar la propiedad GraphRankingModel para ordenar los resultados

Puedes ordenar el resultado devuelto para las consultas de gráficos de dos maneras: por la Marca de hora o el Peso del borde.

  • Para ordenar según la marca de hora del borde, establece la propiedad GraphRankingModel en {"features"\:[{"function"\:"EdgeTime"}]}.

  • Para ordenar según el peso del borde, establece la propiedad GraphRankingModel en {"features"\:[{"function"\:"EdgeWeight"}]}.

En ambos casos, también debes establecer la propiedad RankingModelId en '0c77ded8-c3ef-466d-929d-905670ea1d72'. Si un elemento del resultado es el objeto de más de un borde que coincide con la consulta del gráfico, se usará la Marca de hora o Peso con mayor valor.

Ejemplo 1: Ordenar los elementos que modificaste recientemente según la hora en que se modificaron por última vez.

Sintaxis: GraphQuery:ACTOR(ME, action:1003) GraphRankingModel:{"features"\:[{"function"\:"EdgeTime"}]} RankingModelId='0c77ded8-c3ef-466d-929d-905670ea1d72'

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1003),GraphRankingModel:{"features"\:[{"function"\:"EdgeTime"}]}'
&amp;RankingModelId='0c77ded8-c3ef-466d-929d-905670ea1d72'

Ejemplo 2: Ordenar las personas con las que trabajas (WorkingWith) según su cercanía hacia ti.

Sintaxis: GraphQuery:ACTOR(ME, action:1019) GraphRankingModel:{"features"\:[{"function"\:"EdgeWeight"}]} RankingModelId='0c77ded8-c3ef-466d-929d-905670ea1d72'

https://<tenant_address>/_api/search/query?Querytext='*'&amp;Properties='GraphQuery:ACTOR(ME\,action\:1019),GraphRankingModel:{"features"\:"function"\:"EdgeWeight"}]}'
&amp;RankingModelId='0c77ded8-c3ef-466d-929d-905670ea1d72'

Para consultas de varios actores, puedes usar un parámetro llamado actorCombination en el GraphRankingModel para elegir cómo combinar las puntuaciones de clasificación para los diferentes actores.

Ejemplo 3: Encontrar documentos relacionados contigo y con Carl y ordenarlos según la suma de su peso.

Sintaxis: AND(ACTOR(ME, action:1020), ACTOR(2962, action:1020)) GraphRankingModel:{"actorCombination"\:"sum"\,"features"\:[{"function"\:"EdgeWeight"}]} RankingModelId='0c77ded8-c3ef-466d-929d-905670ea1d72'

https://<tenant_address>/_api/search/query?Querytext='*'&Properties='GraphQuery:AND(ACTOR(ME\, action\:1020)\,ACTOR(2962\,action\:1020)),
GraphRankingModel:{ "actorCombination"\:"sum"\,"features"\:[{"function"\:"EdgeWeight"}]}'
&RankingModelId='0c77ded8-c3ef-466d-929d-905670ea1d72'

El parámetro actorCombination admite los valores "min", "max" y "sum"; el valor predeterminado es "max".

Combinar la propiedad GraphQuery con consultas de contenido o consultas de texto completo

Ejemplo: Combinar GraphQuery con Querytext='Title:design' para realizar una consulta sobre todos los elementos que has visto recientemente con "design" en su título.

Sintaxis: GraphQuery:ACTOR(ME, action:1001) Querytext='Title:design'

https://<tenant_address>/_api/search/query?Querytext='Title:design'&amp;Properties='GraphQuery:ACTOR(ME)\,action\:1001))

Para modificar la consulta, puedes usar cualquier consulta en Querytext.

Usar la propiedad de consulta GraphRestrictionMode para modificar el resultado

Cuando ejecutas una consulta de gráfico, el conjunto predeterminado de elementos que obtienes es la intersección del resultado del gráfico y el resultado del contenido. Pero, si deseas que Office Graph devuelva solo el resultado del contenido, puedes establecer la propiedad GraphRestrictionMode en falso. Todos los bordes que coincidan con la consulta del gráfico también se devuelven como parte de dicho resultado.

Ejemplo: Combinar GraphQuery con Querytext='Title:design' para realizar una consulta sobre todos los elementos que hayas visto recientemente que tengan "design" en su título.

Sintaxis: GraphQuery:ACTOR(ME, action:1001) Querytext='design' GraphRestrictionMode:false

https://<tenant_address>/_api/search/query?Querytext='design'&amp;Properties='GraphQuery:ACTOR(ME)\,action\:1001),GraphRestrictionMode:false'&SelectProperties='Docid,Title'
© 2018 Microsoft