Skip to main content

 Web service API

How to use PageSeeder's Web service API

<uri>

Summary

Represents a URI object in PageSeeder. A URI can be either internal, in which case it is a document object or external, in which case it is URL object.

Usage context

Permitted content<displaytitle>, <description>, <labels>, <sharing>
Permitted parent<uris>

Attributes

This element includes the following attributes

NameTypeRequiredDescription
archivedbooleannoIf true, this URI is archived (for URLs only).
createdxs:dateTimenoDate time the URI was created in ISO 8601 format (e.g. 2012-05-23T15:33:52+10:00)
decodedpathxs:stringyesURI path not URL encoded (e.g. /ps/acme/specs/my product.xml).
dociddocument-idnoUser entered unique document identifier (not for URLs).
documenttypedocument-typenoDocument type (not for URLs).
externalbooleannoIf true, this is a URL
folderbooleannoIf true, this is a folder (for URLs only).
hostxs:stringyesURI host (e.g. mycompany.com).
idxs:longyesUnique and permanent URI identifier.
mediatypexs:stringnoURI media type (e.g. text/html).
modifiedxs:dateTimenoDate time the URI was last modified in ISO 8601 format (e.g. 2012-05-23T15:33:52+10:00).
pathxs:stringyesURI path (e.g. /ps/acme/specs/product.xml).
portxs:integeryesURI port number (e.g. 80, 443).
schemexs:stringyesURI scheme (e.g. http, https).
titledocument-titlenoURI title.
sizexs:longnoThe file size in bytes (URLs or non-PSML documents only).

@archived

A boolean flag indicating whether the URI is archived – only used for URLs (external URIs).

@created

Date and time the URI was created in ISO 8601 date time format, including the timezone.

For example 2012-05-23T15:33:52+10:00

@decodedpath

The path of the URI in its URL-decoded form.

For example: /ps/acme/specs/myproduct.psml

@docid

The Doc ID of the document (not used for URLs).

It can only contain alphanumeric characters, hyphens and underscores.

The Doc ID is a system-wide ID that is guaranteed to be unique within the URI host, but can be used as a public identifier for the document.

@documenttype

The document type of the document URI if any (not used for URLs).

It can only contain alphanumeric characters and underscores.

@external

A boolean flag indicating whether the URI refers to a PageSeeder URL instead of a regular document.

@folder

A boolean flag indicating whether the URI refers to a folder instead of a regular document – only used for URLs (external URIs).

@host

The URI host.

@id

The unique ID of the URI.

The URI is a system-wide unique ID for the document that is specific to the PageSeeder instance.

@mediatype

The media type of the URI.

All PSML documents have the media type: application/vnd.pageseeder.psml+xml

@modified

The last time the URI was modified in ISO 8601 date time format. Any edit, note or version  updates this field.

@path

The URL-encoded path of the URI.

@port

The port for the URI.

@scheme

The scheme for the URI.

@title

The title of the URI.

@size

The size in bytes (for non-PSML documents or URL only).

Examples

<share editable="false"
       addcomments="true"
       shareedits="false"
       sharexrefs="true">
  <group id="82"
         name="dev-group2"
         description="Dev group 2"
         owner="dev"
         access="member"
         common="false"
         relatedurl="http://dev.example.org/home.html"/>
</share>

<share owner="true"
       editable="true"
       addcomments="true"
       shareedits="true"
       sharexrefs="true">
  <group id="35"
         name="dev-group1"
         description="Dev group 1"
         owner="dev"
         access="member"
         common="false"/>
</share>

<share groupspecific="title,description">
  <group id="35"
         name="dev-group1"
         description="Dev group 1"
         owner="dev"
         access="member"
         common="false"/>
</share>

Schema

XML Schema

<xs:element name="uri" type="uri-type" />

<xs:complexType name="uri">
  <xs:all>
    <xs:element name="displaytitle" type="xs:string" minOccurs="1"/>
    <xs:element name="description"  type="xs:string" minOccurs="0"/>
    <xs:element ref="labels" minOccurs="0"/>
  </xs:all>
  <xs:attribute name="id"         type="xs:long"    use="required"/>
  <xs:attribute name="docid"      type="document-id" />
  <xs:attribute name="scheme"     type="xs:string"  use="required"/>
  <xs:attribute name="host"       type="xs:string"  use="required"/>
  <xs:attribute name="port"       type="xs:integer" use="required"/>
  <xs:attribute name="path"       type="xs:string"  use="required"/>
  <xs:attribute name="decodedpath" type="xs:string" use="required"/>
  <xs:attribute name="title"      type="xs:string" />
  <xs:attribute name="created"    type="xs:string"/>
  <xs:attribute name="modified"   type="xs:string"/>
  <xs:attribute name="documenttype" type="document-type"/>
  <xs:attribute name="mediatype"  type="xs:string"/>
  <xs:attribute name="external"   type="boolean"/>
  <xs:attribute name="folder"     type="boolean"/>
  <xs:attribute name="archived"   type="boolean"/> 
  <xs:attribute name="size"       type="xs:long"/>
</xs:complexType>

 

Compatibility

No change since initial API release.

See also

Created on , last edited on