5.17 Default Style Sheet for GATE Extractor Output
This section lists the default XML style sheet that the mdsys.gatenlp_extractor
implementation uses to convert the annotation set (encoded in XML) into RDF/XML.
(This extractor is explained in Working with General Architecture for Text Engineering (GATE).)
<?xml version="1.0"?> <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <xsl:output encoding="utf-8" indent="yes"/> <xsl:param name="docbase">http://xmlns.oracle.com/rdfctx/</xsl:param> <xsl:param name="docident">0</xsl:param> <xsl:param name="classpfx"> <xsl:value-of select="$docbase"/> <xsl:text>class/</xsl:text> </xsl:param> <xsl:template match="/"> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:prop="http://xmlns.oracle.com/rdfctx/property/"> <xsl:for-each select="AnnotationSet/Annotation"> <rdf:Description> <xsl:attribute name="rdf:about"> <xsl:value-of select="$docbase"/> <xsl:text>docref/</xsl:text> <xsl:value-of select="$docident"/> <xsl:text>/</xsl:text> <xsl:value-of select="@Id"/> </xsl:attribute> <xsl:for-each select="./Feature"> <xsl:choose> <xsl:when test="./Name[text()='majorType']"> <rdf:type> <xsl:attribute name="rdf:resource"> <xsl:value-of select="$classpfx"/> <xsl:text>major/</xsl:text> <xsl:value-of select="translate(./Value/text(), ' ', '#')"/> </xsl:attribute> </rdf:type> </xsl:when> <xsl:when test="./Name[text()='minorType']"> <xsl:element name="prop:hasMinorType"> <xsl:attribute name="rdf:resource"> <xsl:value-of select="$docbase"/> <xsl:text>minorType/</xsl:text> <xsl:value-of select="translate(./Value/text(), ' ', '#')"/> </xsl:attribute> </xsl:element> </xsl:when> <xsl:when test="./Name[text()='kind']"> <xsl:element name="prop:hasKind"> <xsl:attribute name="rdf:resource"> <xsl:value-of select="$docbase"/> <xsl:text>kind/</xsl:text> <xsl:value-of select="translate(./Value/text(), ' ', '#')"/> </xsl:attribute> </xsl:element> </xsl:when> <xsl:when test="./Name[text()='locType']"> <xsl:element name="prop:hasLocType"> <xsl:attribute name="rdf:resource"> <xsl:value-of select="$docbase"/> <xsl:text>locType/</xsl:text> <xsl:value-of select="translate(./Value/text(), ' ', '#')"/> </xsl:attribute> </xsl:element> </xsl:when> <xsl:when test="./Name[text()='entityValue']"> <xsl:element name="prop:hasEntityValue"> <xsl:attribute name="rdf:datatype"> <xsl:text> http://www.w3.org/2001/XMLSchema#string </xsl:text> </xsl:attribute> <xsl:value-of select="./Value/text()"/> </xsl:element> </xsl:when> <xsl:otherwise> <xsl:element name="prop:has{translate( substring(./Name/text(),1,1), 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')}{ substring(./Name/text(),2)}"> <xsl:attribute name="rdf:datatype"> <xsl:text> http://www.w3.org/2001/XMLSchema#string </xsl:text> </xsl:attribute> <xsl:value-of select="./Value/text()"/> </xsl:element> </xsl:otherwise> </xsl:choose> </xsl:for-each> </rdf:Description> </xsl:for-each> </rdf:RDF> </xsl:template> </xsl:stylesheet>
Parent topic: Semantic Indexing for Documents