Custom Web Publishing with XML and XSLT

Table Of Contents
28 FileMaker Server Custom Web Publishing with XML and XSLT
1 <port> is optional and specifies the port that the web server is using. If no port is specified, then the default
port for the protocol is used (port 80 for HTTP, or port 443 for HTTPS).
1 <xml_grammar> is the name of the FileMaker XML grammar. Possible values are fmresultset.xml,
FMPXMLRESULT.xml, FMPXMLLAYOUT.xml, or FMPDSORESULT.xml. See
“Using the fmsresultset grammar”
on page 31 and “Using other FileMaker XML grammars” on page 34.
1 <query string> is a combination of one query command and one or more query parameters for FileMaker
XML publishing. (The –dbnames command doesn’t require any parameters.) See
“Using FileMaker
query strings to request XML data” on page 37, and appendix A, “Valid names used in query strings.”
Note The URL syntax, including the names of the query command and parameters, is case sensitive except for
portions of the query string. The majority of the URL is in lowercase, with the exception of the three uppercase
grammar names: FMPXMLRESULT, FMPXMLLAYOUT, and FMPDSORESULT. For information on the rules for
case sensitivity of the query string, see
“Guidelines for using query commands and parameters” on page 88.
Here are two examples of URLs for accessing XML data via the Web Publishing Engine:
http://server.company.com/fmi/xml/fmresultset.xml?–db=products&–lay=sales&–findall
http://192.168.123.101/fmi/xml/FMPXMLRESULT.xml?–db=products&–lay=sales&–findall
About the URL syntax for FileMaker container objects in XML solutions
In a generated XML document for an XML solution, the syntax used to refer to a container object is different
for container fields that store the actual object in the database, as opposed to container fields that store a
reference to the object.
1 If a container field stores the actual object in the database, then the container field’s <data> element uses
the following relative URL syntax to refer to the object:
<data>/fmi/xml/cnt/data.<extension>?<query string></data>
where <extension> is the filename extension identifying the type of object, such as .jpg. The filename
extension sets the MIME type to allow the web browser to properly identify the container data. For
information on <query string>, see the previous section,
“About the URL syntax for XML data.”
For example:
<data>/fmi/xml/cnt/data.jpg?–db=products&–lay=sales&–field=product_image(1)&–recid=2</data>
Note In the generated XML for a container field, the value for the –field query parameter is a fully
qualified field name. The number in the parentheses indicates the repetition number for the container
field, and is generated for both repeating and non-repeating fields. See
“About the syntax for a fully
qualified field name” on page 89.
To retrieve the container data from the database, use the following syntax:
<scheme>://<host>[:<port>]/fmi/xml/cnt/data.<extension>?<query string>
For information about <scheme>, <host>, or <port>, see the previous section, “About the URL syntax for
XML data.”
For example:
http://www.company.com/fmi/xml/cnt/data.jpg?–db=products&–lay=sales&–field=product_image(1)&–recid=2