<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Web Service APIs for Scribe Registrars, Nexus Diristries, PORTAL Registries and DOORS Directories in the NPD System</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Adam G. Craig</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Seung-Ho Bae</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Teja S. Veeramacheneni</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>S. Koby Taswell</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carl Taswell</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>The Nexus-PORTAL-DOORS System (NPDS) has been designed with the Hierarchically Distributed Mobile Metadata (HDMM) architectural style to provide an infrastructure system for managing both lexical and semantic metadata about both virtual and physical entities. We describe version 0.8 of NPDS, including the separation of concerns between the original Problem-Oriented Registry of Tags And Labels (PORTAL) registries and the Domain Ontology Oriented Resource System (DOORS) directories, the combined registry and directory functionality of Nexus diristries, and the RESTful read-only web service API through which resource representation metadata records can be retrieved from these NPDS servers. We also introduce Scribe registrars with a corresponding RESTful read-write web service API for management of metadata records by both software agents accessing the web services directly and human users accessing them indirectly via web applications.</p>
      </abstract>
      <kwd-group>
        <kwd>Nexus-PORTAL-DOORS</kwd>
        <kwd>diristry</kwd>
        <kwd>registry</kwd>
        <kwd>directory registrar</kwd>
        <kwd>HDMM</kwd>
        <kwd>REST</kwd>
        <kwd>API</kwd>
        <kwd>web service</kwd>
        <kwd>semantic</kwd>
        <kwd>lexical</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>The Nexus-PORTAL-DOORS System</title>
      <p>
        The Nexus-PORTAL-DOORS System (NPDS) o ers a distributed and
decentralized infrastructure system for metadata management by which individuals
and organizations can maintain their own independent repositories of lexical
and semantic metadata about resource entities in a problem domain of interest
[
        <xref ref-type="bibr" rid="ref12 ref13">12, 13</xref>
        ]. These NPDS metadata repositories may also interact with other data
and metadata repositories [
        <xref ref-type="bibr" rid="ref10 ref11">11, 10</xref>
        ]. NPDS comprises a comprehensive approach
to building an infrastructure system with principles, strategies, an explicit data
schema and messaging speci cation, and a distributed architectural style for
network servers that exchange metadata records about online and o ine resources.
Since its original design [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] in 2006 and subsequent revision [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] in 2009, NPDS
has been built with a `meta-meta' foundational principle enabling `metadata
about metadata' and interoperability that references other repositories,
vocabularies and ontologies.
      </p>
      <p>NPDS comprises 3 types of servers: 1) PORTAL registries for registering
resource entities with unique labels (URI or IRI identi ers) and lexical metadata
that may include optional tags, controlled vocabulary term labels, and
crossreferences; 2) DOORS directories for publishing online and o ine locations of
the identi ed resource entities and semantic metadata that may include RDF
descriptions referencing OWL ontologies; 3) Nexus diristries for combining the
functionality of a PORTAL registry and DOORS directory in a single server
called a diristry with the term coined by abridging DIRectory and regISTRY.</p>
      <p>
        Analogous to the Internet Registry Information Service (IRIS) and Domain
Name System (DNS) protocols, the NPDS approach implements the
Hierarchically Distributed Mobile Metadata (HDMM) architectural style [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] to provide
and redistribute metadata throughout the web. NPDS servers form a
hierarchy consisting of authoritative servers that maintain master copies of records
and distribute them to other non-authoritative servers including secondary and
caching servers. So that the NPDS servers can communicate with each other
and with client applications that retrieve records from them, any NPDS server
should adhere to the common NPDS messaging speci cation and also expose a
consistent RESTful API for read-only web service access to metadata records.
      </p>
      <p>
        To permit diverse implementations of NPDS Scribe registrars that would
support customized access, privacy and security, the NPDS speci cation does
not mandate use of any particular required API for the Scribe registrars through
which human users or software agents may register, revise and curate resource
metadata records for the PORTAL registries, DOORS directories and Nexus
diristries. However, we have created implementations of Scribe registrar services
as examples that expose a RESTful API for a read-write web service. NPDS
provides the original hybrid lexical and semantic approach for metadata and
data integration across repositories as well as searching within problem-oriented,
concept-constrained and domain-speci c repositories. Other projects including
Wikidata, Memex, etc. [
        <xref ref-type="bibr" rid="ref14 ref4 ref9">9, 14, 4</xref>
        ] have since adopted some of the NPDS data
integration and cross-linking ideas that were rst published in 2007 online [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>NPDS Read-Only Web Service API</title>
      <p>
        In order to make lexical and semantic metadata easily accessible to automated
agents, the NPDS web service API should observe RESTful design principles
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The NPDS web service API operates read-only for registries, directories and
diristries, responding to GET requests with the requested resource representation
or set of representations and replying to all other HTTP methods with status
501 Not Implemented [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. This new API simpli es implementation by decreasing
both the number of path patterns and the chances of collisions with paths for
other services or applications on the same host. Separating the read-write service
for Scribe registrars from the read-only services for PORTAL registries, DOORS
directories and Nexus diristries also provides additional measures of security and
independence for write versus read in order to minimize the probability of causing
errors in an infrastructure system intended by design to be distributed and
decentralized, thus better allowing for independent implementations on diverse
platforms with various operating systems, database servers and web servers.
      </p>
      <p>In the service routes described below, we adopt \serverType" to indicate the
type of server, either \nexus", \portal", or \doors". At creation, the implementer
must assign each server a unique identi er consisting of up to 128 alphanumeric
characters, indicated by \serviceTag" below. In the current NPDS
implementation, every resource representation metadata record must have at least one
unique identi er consisting of up to 128 alphanumeric characters, indicated by
\entityTag" below. Version 0.8 of the NPDS read-only web service consists of
the following API endpoints:
{serverType}/{serviceTag}/{entityType}/{infosetStatus} retrieves
descriptions of all entities of the speci ed type and status (\valid", \invalid",
\pending" or \any") from the speci ed service. Example:
http://npds.telegenetics.net/Nexus/GeneScene/person/any
{serverType}/{serviceTag}/{entityTag} retrieves the description of the
speci ed entity from the speci ed service. Example:
http://npds.brainhealthalliance.net/Nexus/BrainWatch/ABA
{serverType}/{serviceTag}?{queryString} retrieves resource
representations ltered according to the optional query string. Example:
http://npds.portaldoors.net/Nexus/DaVinci?nam=semantic
The response body contains a document object, serialized in XML in the current
implementation, which includes the server response and also the client request
if the query string includes the echo ag switch turned on with \ef=1". Other
switches are described on the default help page available at the service root. The
server response includes the status code and, on a successful request, an answer
node which contains a node for each NPDS server type invoked, which in turn
contains a list of resource representation nodes. This response structure keeps
the NPDS record data separate from information about the process by which
the response was derived, which will be useful for future iterations of NPDS that
will respond to more complex queries by drawing on other distributed servers
for additional resource representation records from other sites.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Scribe Read-Write Web Service API</title>
      <p>
        The Scribe registrar read-write web service should also follow RESTful API
design principles in addition to standard practices for HTTP requests and responses
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. In order to facilitate separation of concerns and decrease the likelihood
of unintended write actions by requests intended for read-only interaction, calls
to the Scribe read-write service must specify a server type distinct from those
available via the NPDS read-only API. The Scribe read-write API is compatible
with a wide variety of authentication strategies and allows an authorized client
to create and add a new record to a speci ed service, and to update or delete
an existing record. Requests follow the convention for HTTP methods: a GET
request reads one or more records; a POST request creates a new record with the
data in the request body; a PUT request updates a record by replacing it with
the new version in the request body, and a DELETE request deletes a record.
The current implementation supports approaches either for deriving the
readwrite routes from the read-only routes by prepending \scribe", or else simply
using \scribe" as rst segment with the entityTag as second segment for which
an opaque randomized-character alias can also be used:
http://npds.brainhealthalliance.net/Scribe/Nexus/BrainWatch/
http://npds.brainhealthalliance.net/Scribe/Nexus/BrainWatch/ABA
http://npds.brainhealthalliance.net/Scribe/ABA
http://npds.brainhealthalliance.net/Scribe/C59DB9FFD13
It is important to maintain the Scribe read-write service API independent from
the NPDS read-only service API. Doing so enables the service implementer to
use any preferred means of creating, editing, and deleting records as determined
by organizational considerations such as privacy, security, and customization.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Use Case Scenario: Automated Meta-Analysis</title>
      <p>
        Meta-analysis is a valuable but di cult aspect of medical and scienti c research
wherein investigators analyze multiple reports of primary research results to
assess the extent to which they collectively support or refute a given hypothesis [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
Brain Health Alliance is currently working to build an application for automated
meta-analysis on the foundation of the NPDS infrastructure. This application
will consist of the following components: Curating web applications provide a
human-friendly user interface for the Scribe registrars. Focused web crawlers
retrieve information about resources relevant to a problem domain from databases,
search engines, and other online resources [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] to populate NPDS repositories
with relevant metadata records. Natural language processors translate natural
language questions into SPARQL queries and output from statistical analysis
packages into natural language answers [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Hypothesis-exploring ontologies
facilitate more direct translation of questions from domain experts into SPARQL
queries by providing a compact set of the most relevant concepts and
relationships referencing more comprehensive foundational and domain ontologies to
enable query expansion [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Inference engines expand queries and extract the
relevant information from semantic descriptions of resources in PORTAL, DOORS
or Nexus records [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Statistical analysis packages compute aggregate e ect sizes
and con dence intervals from the retrieved data [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
5
      </p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>
        Continuing the strategic approaches of previous versions of the
Nexus-PORTALDOORS System (NPDS) [
        <xref ref-type="bibr" rid="ref12 ref13">12, 13</xref>
        ], version 0.8 of NPDS provides a way to
bootstrap and bridge the developing semantic web with the existing lexical web. We
have introduced here the separation of concerns between the read-only Nexus
diristries and the new read-write Scribe registrars, as well as adoption of the
serverType parameter as the rst segment of the path in all routes for the NPDS
web services. Maintaining the registrar behavior separate from the NPDS
messaging exchange speci cation leaves implementing organizations greater freedom
to develop customized read-write service APIs for the Scribe registrars. Using
the server type as the rst path segment helps to avoid collisions with URLs
for other services and applications on the same host. As the NPDS speci cation
matures and additional implementations become available, we believe that it will
continue to play an important contributing role in developing a hybridized and
bridged lexical and semantic web infrastructure.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Bojinov</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>RESTful Web API Design with Node.js</article-title>
          . Packt Publishing Ltd.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Chakrabarti</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , Van den Berg, M., and
          <string-name>
            <surname>Dom</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          (
          <year>1999</year>
          ).
          <article-title>Focused crawling: a new approach to topic-speci c web resource discovery</article-title>
          .
          <source>Computer Networks</source>
          ,
          <volume>31</volume>
          (
          <issue>11</issue>
          ):
          <volume>1623</volume>
          {
          <fpage>1640</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Cooper</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hedges</surname>
            ,
            <given-names>L. V.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Valentine</surname>
            ,
            <given-names>J. C.</given-names>
          </string-name>
          (
          <year>2009</year>
          ).
          <article-title>The handbook of research synthesis and meta-analysis</article-title>
          .
          <source>Russell Sage Foundation.</source>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>De</surname>
            <given-names>Sa</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Ratner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Re</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Shin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Wu</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          , and Zhang,
          <string-name>
            <surname>C.</surname>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>Deepdive: Declarative knowledge base construction</article-title>
          .
          <source>ACM SIGMOD Record</source>
          ,
          <volume>45</volume>
          (
          <issue>1</issue>
          ):
          <volume>60</volume>
          {
          <fpage>67</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Fielding</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Reschke</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>2014</year>
          ).
          <article-title>Hypertext transfer protocol (http/1.1): Semantics and content</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Grissom</surname>
            ,
            <given-names>R. J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Kim</surname>
            ,
            <given-names>J. J.</given-names>
          </string-name>
          (
          <year>2012</year>
          ).
          <article-title>E ect sizes for research: Univariate and multivariate applications</article-title>
          . Routledge.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Kaufmann</surname>
          </string-name>
          , E. and
          <string-name>
            <surname>Bernstein</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2007</year>
          ).
          <article-title>How useful are natural language interfaces to the semantic web for casual end-users? In The Semantic Web</article-title>
          , pages
          <volume>281</volume>
          {
          <fpage>294</fpage>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8. May eld, J. and
          <string-name>
            <surname>Finin</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          (
          <year>2003</year>
          ).
          <article-title>Information retrieval on the semantic web: Integrating inference and retrieval</article-title>
          .
          <source>In Proceedings of the SIGIR Workshop on the Semantic Web.</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Mitraka</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Waagmeester</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burgstaller-Muehlbacher</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schriml</surname>
            ,
            <given-names>L. M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Su</surname>
            ,
            <given-names>A. I.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Good</surname>
            ,
            <given-names>B. M.</given-names>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>Wikidata: A platform for data integration and dissemination for the life sciences and beyond</article-title>
          . bioRxiv, page
          <volume>031971</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Skarzynski</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Craig</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Taswell</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>SOLOMON: An ontology for sensory-onset, language-onset and motor-onset dementias</article-title>
          .
          <source>In Bioinformatics and Biomedicine (BIBM)</source>
          ,
          <year>2015</year>
          IEEE International Conference on, pages
          <volume>969</volume>
          {
          <fpage>972</fpage>
          . IEEE.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Taswell</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Franc</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Hawkins</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>The ManRay Project: Initial development of a web-enabled ontology for nuclear medicine</article-title>
          .
          <source>In Proceedings of the 53rd Annual Meeting of the Society of Nuclear Medicine</source>
          , San Diego, CA, page
          <volume>1431</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Taswell</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2008</year>
          ).
          <article-title>DOORS to the semantic web and grid with a PORTAL for biomedical computing</article-title>
          . Information Technology in Biomedicine, IEEE Transactions on,
          <volume>12</volume>
          (
          <issue>2</issue>
          ):
          <volume>191</volume>
          {
          <fpage>204</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Taswell</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2010</year>
          ).
          <article-title>A distributed infrastructure for metadata about metadata: The HDMM architectural style and PORTAL-DOORS system</article-title>
          .
          <source>Future Internet</source>
          ,
          <volume>2</volume>
          (
          <issue>2</issue>
          ):
          <fpage>156</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. Wilson,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>McGibbney</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Mattmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Ramirez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Joyce</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            , and
            <surname>Whitehall</surname>
          </string-name>
          ,
          <string-name>
            <surname>K.</surname>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>Mememxgate: Unearthing latent content features for improved search and relevancy ranking across scienti c literature</article-title>
          .
          <source>In AGU Fall Meeting Abstracts.</source>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>