Metadata search


I would like to perform a project search using more than one metadata field. I gather that this functionality is not currently available in Scrivener, so I’m writing to ask for suggested work-arounds. After experimenting and then searching the forum, I’m aware that: (1) I can combine a project search and a document search of the project search results; and (2) I can add metadata items as a new key words and then search for multiple key words. (3) Sorting in the outliner is not implemented in the Windows version, so it’s not easy to manually create a subset of a large collection, assuming that the outliner columns contain the metadata search terms.

Am I missing something here?


There are of course variable coincidences (which can be improved by careful meta-data design) where the “All (Any Word)” and “All (All Words)” search algorithms can produce multi-axis results, but only if the two things you are searching for are unique in their usage—exclusive to that form of meta-data. That is where a little planning can come in.

For example, you could prefix all of the PoV labels with “PoV-“. Searching for Mildred as “PoV-Mildred” produces very specific results, rather than results that could include any happenstance mention of Mildred throughout the project. You can know you are only getting labels because of the unique naming. Hence, throwing in another unique meta-data (say, “Loc-Uptown”) can give you pure intersection and union based logical results, depending upon whether you use all words or any words as your search options, respectively.

Just so you know we have a whole line of features, or in some cases goals (where features have not yet been designed) revolving around Project Search in general, with some advancements being implemented in multiple search contexts, like support for the regular expression search language, which will be possible from about three or four different places. I can’t really say what any of that will look like yet because much of it hasn’t even really been discussed—but some form of multi-axis searching is one of those goals without a feature design, yet.

1 Like

Thanks for your response! “Variable coincidences” is a tactic that had not occurred to me, so I will keep that in mind going forward. The workaround I devised seems to work well enough for now: I noticed that the keyword interface supports parent/child relations, so it was easy enough to add the “label” and “status” variables as parents, include the variable values as children, and then search for a label value and a status value along with other keywords as needed. Searching for “All” three keyword types returns the intersection set of the label, status, and keyword variables, so I’m happy. Very happy, actually.

I truly admire the work that’s gone into Scrivener, and I look forward to seeing some of the enhancements you mentioned. One of the really important and exciting ways that Scrivener adds value for me as a user is its role as a document management tool. I have a rather large collection of pdf source documents, and each Scrivener note contains, among other things, a link and page reference to the underlying pdf. To the extent that I can frame queries in Scrivener, I can use it as a kind of textual database management tool in addition to a writing workshop. That’s unbelievably useful for my purposes.

While more advanced features are under development, I wonder how feasible it would be to give a user the option of pointing the existing project search tool to a collection instead of to the entire project, as you have done with the compile feature? If it were possible to save a project search result as a collection and then search that collection using a different metadata variable, I think it would be a big step in the direction of multi-axis searching.

Thanks again,

1 Like