при работе с PDF-файлами я столкнулся с типами MIME application/pdf
и application/x-pdf
среди других.
есть ли разница между этими двумя типами, и если да, что это? Один предпочтительнее другого?
Я работаю над веб-приложением, которое должно доставлять огромное количество PDF-файлов, и я хочу сделать это правильно, если он есть.
604
3
3 ответов:
стандартный тип MIME
application/pdf
. Назначение определяется в RFC 3778, приложение / pdf тип носителя, на которые ссылается MIME Media Types registry.типы MIME контролируются органом стандартов, Интернет Назначил Номера Власти (IANA). Это та же организация, которая управляет корневыми серверами имен и пространством IP-адресов.
использование
x-pdf
предшествует стандартизации MIME тип для PDF. Типы MIME вx-
пространства имен считаются экспериментальными, так же как и вvnd.
пространства имен считаются зависящими от поставщика.x-pdf
может использоваться для совместимости со старым программным обеспечением.
Это соглашение, определенное в RFC 2045-многофункциональные расширения интернет-почты (MIME) Часть первая: формат тел интернет-сообщений.
частная [подтип] значения (начиная с «X-«) могут быть определены
на двусторонней основе между двух взаимодействующих агентов без
вне регистрации или стандартизации. Эти ценности
не может быть зарегистрирован или стандартизирован.новые стандартные значения должны быть зарегистрирован в IANA, как описано в RFC 2048.
аналогичное ограничение применяется к типу верхнего уровня. Из того же источника,
Если по какой-либо причине должен использоваться другой тип верхнего уровня, он должен быть
дали имя, начинающееся с «X -«, чтобы указать его нестандартный статус
и чтобы избежать потенциального конфликта с будущим официальным названием.(обратите внимание, что в RFC 2045, » [m]atching СМИ тип и подтип всегда нечувствительны к регистру», поэтому нет никакой разницы между интерпретацией «X -» и » x -«.)
поэтому справедливо предположить, что» application/x-foo «использовался до того, как IANA определила»application/foo». И он все еще может использоваться людьми, которые не знают о назначении токена IANA.
Как сказал Крис Хэнсон, типы MIME контролируются IANA. Это подробно описано в RFC 2048-многофункциональные расширения интернет-почты (MIME) Часть четвертая: Процедуры Регистрации. Согласно RFC 3778, которая составляет цитируется IANA как определение для «application / pdf»,
тип носителя application / pdf был впервые зарегистрирован в 1993 году Полом Линднером для использования протоколом gopher; регистрация была впоследствии обновлена в 1994 году Стивом Зиллсом.
тип «приложение / pdf» существует уже более десяти лет. Так что мне кажется, что где бы то ни было «application / x-pdf» был использован в новых приложениях, решение, возможно, не было преднамеренным.
из Википедии тип СМИ,
тип носителя состоит из типа, подтипа и необязательно
параметры. Например, HTML-файл может быть обозначен как text / html; charset=UTF-8.тип носителя состоит из имени типа верхнего уровня и имени подтипа, которое является
далее структурируются в так называемые»деревья».top-level type name / subtype name [ ; parameters ] top-level type name / [ tree. ] subtype name [ +suffix ] [ ; parameters ]
все типы носителей должны быть зарегистрированы с использованием процедур регистрации IANA. В настоящее время следующее создаются деревья:
standard
,vendor
,personal
илиvanity
незарегистрированныйx.
стандартные:
типы носителей в дереве стандартов не используют фасет дерева (префикс).
type / media type name [+suffix]
примеры: «application / xhtml+xml»,»image/png»
продавец:
дерево поставщиков используется для типов носителей, связанных с общедоступными
товары. Он используетvnd.
грань.type / vnd. media type name [+suffix] - used in the case of well-known producer type / vnd. producer's name followed by media type name [+suffix] - producer's name must be approved by IANA type / vnd. producer's name followed by product's name [+suffix] - producer's name must be approved by IANA
личное или тщеславие дерево:
личные или тщеславие дерево включает в себя типы носителей, созданных экспериментально или
в составе продукции, которая не распространяется в коммерческих целях. Он использует
prs.
аспект.type / prs. media type name [+suffix]
незарегистрированное x. tree:
дерево «x.» может использоваться для типов носителей, предназначенных исключительно для использования
в частных, локальных средах и только при активном согласии
стороны обмениваются ими. Типы в этом дереве не могут быть зарегистрированы.согласно предыдущей версии RFC 6838-устаревший RFC 2048
(опубликовано в ноябре 1996 года) это должно быть редко, если когда-либо, необходимо
использовать незарегистрированные экспериментальные типы, и как таковое использование обоих «x-»
и» Х » формы обескураживает. Предыдущие версии этого RFC — RFC
1590 и RFC 1521 заявили, что использование обозначения» x — » для
имя подтипа может использоваться для незарегистрированных и частных подтипов, но
эта рекомендация была отменена в ноябре 1996 года.type / x. media type name [+suffix]
так что ясно, что стандартный тип MIME type
application/pdf
является подходящим для использования в то время как вы должны избегать использования устаревших и незарегистрированныхx-
тип носителя, как указано в RFC 2048 и RFC 6838.
PDF is an abbreviation for Portable Document Format, which was introduced by Adobe in 1993 and has since become a reliable way to present and exchange documents. Adobe Systems created it for easy document exchange. It is Commonly used with Adobe and Acrobat Reader.
The International Organization for Standardization now maintains the PDF format as an open standard (ISO standard)(ISO 32000-1:2008). The good thing about PDF Documents is these documents do not rely on any software or hardware. It is used throughout the web, email, and anywhere else where a document exchange mechanism is used.
These documents may include images, text, graphics, video, audio, buttons, form fields, links, and so on.
When a PDF file is not displaying or functioning properly, the easiest solution would be to repair PDF documents with the help of dedicated software. The tool can detect and fix most regular errors and avoid losing any important data from the PDF document.
There are various Internet MIME Types for PDF found like
- application/pdf
- application/x-pdf
- application/x-bzpdf
- application/x-gzpdf
- applications/vnd.pdf
- application/acrobat
- application/x-google-chrome-pdf
- text/pdf
- text/x-pdf
Among them, the standard one is:
application/pdf
The assignment for this mime-type is defined in RFC 8118, The application/pdf Media Type, which can be found in the Media Types registry.
Here,
- Type name: application
- Subtype name: pdf
- Required parameters: none
- Optional parameter: none
- Encoding considerations: binary
Also, If you have to use content-type for pdf then always use application/pdf as content-type:application/pdf
FAQ:
How to convert MIME to PDF?
We can easily convert the file extension .mime to PDF with the help of a PDF printer. This software is free of charge, has no restrictions, works in offline versions, and many more.
How to accept and download pdf files in asp.net?
Small snippets are attached here.
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", "attachment; filename=my_pdf_file.pdf");
Response.TransmitFile(Server.MapPath("~/wwwroot/my_pdf_file.pdf"));
Response.End();
What are PDF/X, PDF/A, and PDF/E?
These are 3 standard PDF files.
- PDF/X: Ensures that the file will print properly when sent to professional printing (no RGB colors, all fonts embedded, etc.).
- PDF/A: Ensures that the file is suitable for archiving, that is, that it will remain readable for a long time despite technological changes.
- PDF/E: This format is especially useful for engineering documents.
What is xpdf ?
Xpdf is a free and open-source PDF viewer that runs on operating systems that support the Qt toolkit. There is no connection between pdf and xpdf.
From Wikipedia Media type,
A media type is composed of a type, a subtype, and optional
parameters. As an example, an HTML file might be designated text/html; charset=UTF-8.Media type consists of top-level type name and sub-type name, which is
further structured into so-called «trees».
top-level type name / subtype name [ ; parameters ]
top-level type name / [ tree. ] subtype name [ +suffix ] [ ; parameters ]
All media types should be registered using the IANA registration procedures. Currently the following trees are created: standard
, vendor
, personal
or vanity
, unregistered x.
Standard:
Media types in the standards tree do not use any tree facet (prefix).
type / media type name [+suffix]
Examples: «application/xhtml+xml», «image/png»
Vendor:
Vendor tree is used for media types associated with publicly available
products. It usesvnd.
facet.
type / vnd. media type name [+suffix] - used in the case of well-known producer
type / vnd. producer's name followed by media type name [+suffix] - producer's name must be approved by IANA
type / vnd. producer's name followed by product's name [+suffix] - producer's name must be approved by IANA
Personal or Vanity tree:
Personal or Vanity tree includes media types created experimentally or
as part of products that are not distributed commercially. It uses
prs.
facet.
type / prs. media type name [+suffix]
Unregistered x. tree:
The «x.» tree may be used for media types intended exclusively for use
in private, local environments and only with the active agreement of
the parties exchanging them. Types in this tree cannot be registered.According to the previous version of RFC 6838 — obsoleted RFC 2048
(published in November 1996) it should rarely, if ever, be necessary
to use unregistered experimental types, and as such use of both «x-»
and «x.» forms is discouraged. Previous versions of that RFC — RFC
1590 and RFC 1521 stated that the use of «x-» notation for the
sub-type name may be used for unregistered and private sub-types, but
this recommendation was obsoleted in November 1996.
type / x. media type name [+suffix]
So its clear that the standard type MIME type application/pdf
is the appropriate one to use while you should avoid using the obsolete and unregistered x-
media type as stated in RFC 2048 and RFC 6838.
application/andrew-inset
N/A
Andrew Toolkit
application/applixware
.aw
Applixware
application/atom+xml
.atom, .xml
Atom Syndication Format
application/atomcat+xml
.atomcat
Atom Publishing Protocol
application/atomsvc+xml
.atomsvc
Atom Publishing Protocol Service Document
application/ccxml+xml,
.ccxml
Voice Browser Call Control
application/cdmi-capability
.cdmia
Cloud Data Management Interface (CDMI) — Capability
application/cdmi-container
.cdmic
Cloud Data Management Interface (CDMI) — Contaimer
application/cdmi-domain
.cdmid
Cloud Data Management Interface (CDMI) — Domain
application/cdmi-object
.cdmio
Cloud Data Management Interface (CDMI) — Object
application/cdmi-queue
.cdmiq
Cloud Data Management Interface (CDMI) — Queue
application/cu-seeme
.cu
CU-SeeMe
application/davmount+xml
.davmount
Web Distributed Authoring and Versioning
application/dssc+der
.dssc
Data Structure for the Security Suitability of Cryptographic Algorithms
application/dssc+xml
.xdssc
Data Structure for the Security Suitability of Cryptographic Algorithms
application/ecmascript
.es
ECMAScript
application/emma+xml
.emma
Extensible MultiModal Annotation
application/epub+zip
.epub
Electronic Publication
application/exi
.exi
Efficient XML Interchange
application/font-tdpfr
.pfr
Portable Font Resource
application/hyperstudio
.stk
Hyperstudio
application/ipfix
.ipfix
Internet Protocol Flow Information Export
application/java-archive
.jar
Java Archive
application/java-serialized-object
.ser
Java Serialized Object
application/java-vm
.class
Java Bytecode File
application/javascript
.js
JavaScript
application/json
.json
JavaScript Object Notation (JSON)
application/mac-binhex40
.hqx
Macintosh BinHex 4.0
application/mac-compactpro
.cpt
Compact Pro
application/mads+xml
.mads
Metadata Authority Description Schema
application/marc
.mrc
MARC Formats
application/marcxml+xml
.mrcx
MARC21 XML Schema
application/mathematica
.ma
Mathematica Notebooks
application/mathml+xml
.mathml
Mathematical Markup Language
application/mbox
.mbox
Mbox database files
application/mediaservercontrol+xml
.mscml
Media Server Control Markup Language
application/metalink4+xml
.meta4
Metalink
application/mets+xml
.mets
Metadata Encoding and Transmission Standard
application/mods+xml
.mods
Metadata Object Description Schema
application/mp21
.m21
MPEG-21
application/mp4
.mp4
MPEG4
application/msword
.doc
Microsoft Word
application/mxf
.mxf
Material Exchange Format
application/octet-stream
.bin
Binary Data
application/oda
.oda
Office Document Architecture
application/oebps-package+xml
.opf
Open eBook Publication Structure
application/ogg
.ogx
Ogg
application/onenote
.onetoc
Microsoft OneNote
application/patch-ops-error+xml
.xer
XML Patch Framework
application/pdf
.pdf
Adobe Portable Document Format
application/pgp-encrypted
.pgp
Pretty Good Privacy
application/pgp-signature
.pgp
Pretty Good Privacy — Signature
application/pics-rules
.prf
PICSRules
application/pkcs10
.p10
PKCS #10 — Certification Request Standard
application/pkcs7-mime
.p7m
PKCS #7 — Cryptographic Message Syntax Standard
application/pkcs7-signature
.p7s
PKCS #7 — Cryptographic Message Syntax Standard
application/pkcs8
.p8
PKCS #8 — Private-Key Information Syntax Standard
application/pkix-attr-cert
.ac
Attribute Certificate
application/pkix-cert
.cer
Internet Public Key Infrastructure — Certificate
application/pkix-crl
.crl
Internet Public Key Infrastructure — Certificate Revocation Lists
application/pkix-pkipath
.pkipath
Internet Public Key Infrastructure — Certification Path
application/pkixcmp
.pki
Internet Public Key Infrastructure — Certificate Management Protocole
application/pls+xml
.pls
Pronunciation Lexicon Specification
application/postscript
.ai
PostScript
application/prs.cww
.cww
CU-Writer
application/pskc+xml
.pskcxml
Portable Symmetric Key Container
application/rdf+xml
.rdf
Resource Description Framework
application/reginfo+xml
.rif
IMS Networks
application/relax-ng-compact-syntax
.rnc
Relax NG Compact Syntax
application/resource-lists-diff+xml
.rld
XML Resource Lists Diff
application/resource-lists+xml
.rl
XML Resource Lists
application/rls-services+xml
.rs
XML Resource Lists
application/rsd+xml
.rsd
Really Simple Discovery
application/rss+xml
.rss, .xml
RSS — Really Simple Syndication
application/rtf
.rtf
Rich Text Format
application/sbml+xml
.sbml
Systems Biology Markup Language
application/scvp-cv-request
.scq
Server-Based Certificate Validation Protocol — Validation Request
application/scvp-cv-response
.scs
Server-Based Certificate Validation Protocol — Validation Response
application/scvp-vp-request
.spq
Server-Based Certificate Validation Protocol — Validation Policies — Request
application/scvp-vp-response
.spp
Server-Based Certificate Validation Protocol — Validation Policies — Response
application/sdp
.sdp
Session Description Protocol
application/set-payment-initiation
.setpay
Secure Electronic Transaction — Payment
application/set-registration-initiation
.setreg
Secure Electronic Transaction — Registration
application/shf+xml
.shf
S Hexdump Format
application/smil+xml
.smi
Synchronized Multimedia Integration Language
application/sparql-query
.rq
SPARQL — Query
application/sparql-results+xml
.srx
SPARQL — Results
application/srgs
.gram
Speech Recognition Grammar Specification
application/srgs+xml
.grxml
Speech Recognition Grammar Specification — XML
application/sru+xml
.sru
Search/Retrieve via URL Response Format
application/ssml+xml
.ssml
Speech Synthesis Markup Language
application/tei+xml
.tei
Text Encoding and Interchange
application/thraud+xml
.tfi
Sharing Transaction Fraud Data
application/timestamped-data
.tsd
Time Stamped Data Envelope
application/vnd.3gpp.pic-bw-large
.plb
3rd Generation Partnership Project — Pic Large
application/vnd.3gpp.pic-bw-small
.psb
3rd Generation Partnership Project — Pic Small
application/vnd.3gpp.pic-bw-var
.pvb
3rd Generation Partnership Project — Pic Var
application/vnd.3gpp2.tcap
.tcap
3rd Generation Partnership Project — Transaction Capabilities Application Part
application/vnd.3m.post-it-notes
.pwn
3M Post It Notes
application/vnd.accpac.simply.aso
.aso
Simply Accounting
application/vnd.accpac.simply.imp
.imp
Simply Accounting — Data Import
application/vnd.acucobol
.acu
ACU Cobol
application/vnd.acucorp
.atc
ACU Cobol
application/vnd.adobe.air-application-installer-package+zip
.air
Adobe AIR Application
application/vnd.adobe.fxp
.fxp
Adobe Flex Project
application/vnd.adobe.xdp+xml
.xdp
Adobe XML Data Package
application/vnd.adobe.xfdf
.xfdf
Adobe XML Forms Data Format
application/vnd.ahead.space
.ahead
Ahead AIR Application
application/vnd.airzip.filesecure.azf
.azf
AirZip FileSECURE
application/vnd.airzip.filesecure.azs
.azs
AirZip FileSECURE
application/vnd.amazon.ebook
.azw
Amazon Kindle eBook format
application/vnd.americandynamics.acc
.acc
Active Content Compression
application/vnd.amiga.ami
.ami
AmigaDE
application/vnd.android.package-archive
.apk
Android Package Archive
application/vnd.anser-web-certificate-issue-initiation
.cii
ANSER-WEB Terminal Client — Certificate Issue
application/vnd.anser-web-funds-transfer-initiation
.fti
ANSER-WEB Terminal Client — Web Funds Transfer
application/vnd.antix.game-component
.atx
Antix Game Player
application/vnd.apple.installer+xml
.mpkg
Apple Installer Package
application/vnd.apple.mpegurl
.m3u8
Multimedia Playlist Unicode
application/vnd.aristanetworks.swi
.swi
Arista Networks Software Image
application/vnd.audiograph
.aep
Audiograph
application/vnd.blueice.multipass
.mpm
Blueice Research Multipass
application/vnd.bmi
.bmi
BMI Drawing Data Interchange
application/vnd.businessobjects
.rep
BusinessObjects
application/vnd.chemdraw+xml
.cdxml
CambridgeSoft Chem Draw
application/vnd.chipnuts.karaoke-mmd
.mmd
Karaoke on Chipnuts Chipsets
application/vnd.cinderella
.cdy
Interactive Geometry Software Cinderella
application/vnd.claymore
.cla
Claymore Data Files
application/vnd.cloanto.rp9
.rp9
RetroPlatform Player
application/vnd.clonk.c4group
.c4g
Clonk Game
application/vnd.cluetrust.cartomobile-config
.c11amc
ClueTrust CartoMobile — Config
application/vnd.cluetrust.cartomobile-config-pkg
.c11amz
ClueTrust CartoMobile — Config Package
application/vnd.commonspace
.csp
Sixth Floor Media — CommonSpace
application/vnd.contact.cmsg
.cdbcmsg
CIM Database
application/vnd.cosmocaller
.cmc
CosmoCaller
application/vnd.crick.clicker
.clkx
CrickSoftware — Clicker
application/vnd.crick.clicker.keyboard
.clkk
CrickSoftware — Clicker — Keyboard
application/vnd.crick.clicker.palette
.clkp
CrickSoftware — Clicker — Palette
application/vnd.crick.clicker.template
.clkt
CrickSoftware — Clicker — Template
application/vnd.crick.clicker.wordbank
.clkw
CrickSoftware — Clicker — Wordbank
application/vnd.criticaltools.wbs+xml
.wbs
Critical Tools — PERT Chart EXPERT
application/vnd.ctc-posml
.pml
PosML
application/vnd.cups-ppd
.ppd
Adobe PostScript Printer Description File Format
application/vnd.curl.car
.car
CURL Applet
application/vnd.curl.pcurl
.pcurl
CURL Applet
application/vnd.data-vision.rdz
.rdz
RemoteDocs R-Viewer
application/vnd.denovo.fcselayout-link
.fe_launch
FCS Express Layout Link
application/vnd.dna
.dna
New Moon Liftoff/DNA
application/vnd.dolby.mlp
.mlp
Dolby Meridian Lossless Packing
application/vnd.dpgraph
.dpg
DPGraph
application/vnd.dreamfactory
.dfac
DreamFactory
application/vnd.dvb.ait
.ait
Digital Video Broadcasting
application/vnd.dvb.service
.svc
Digital Video Broadcasting
application/vnd.dynageo
.geo
DynaGeo
application/vnd.ecowin.chart
.mag
EcoWin Chart
application/vnd.enliven
.nml
Enliven Viewer
application/vnd.epson.esf
.esf
QUASS Stream Player
application/vnd.epson.msf
.msf
QUASS Stream Player
application/vnd.epson.quickanime
.qam
QuickAnime Player
application/vnd.epson.salt
.slt
SimpleAnimeLite Player
application/vnd.epson.ssf
.ssf
QUASS Stream Player
application/vnd.eszigno3+xml
.es3
MICROSEC e-Szign¢
application/vnd.ezpix-album
.ez2
EZPix Secure Photo Album
application/vnd.ezpix-package
.ez3
EZPix Secure Photo Album
application/vnd.fdf
.fdf
Forms Data Format
application/vnd.fdsn.seed
.seed
Digital Siesmograph Networks — SEED Datafiles
application/vnd.flographit
.gph
NpGraphIt
application/vnd.fluxtime.clip
.ftc
FluxTime Clip
application/vnd.framemaker
.fm
FrameMaker Normal Format
application/vnd.frogans.fnc
.fnc
Frogans Player
application/vnd.frogans.ltf
.ltf
Frogans Player
application/vnd.fsc.weblaunch
.fsc
Friendly Software Corporation
application/vnd.fujitsu.oasys
.oas
Fujitsu Oasys
application/vnd.fujitsu.oasys2
.oa2
Fujitsu Oasys
application/vnd.fujitsu.oasys3
.oa3
Fujitsu Oasys
application/vnd.fujitsu.oasysgp
.fg5
Fujitsu Oasys
application/vnd.fujitsu.oasysprs
.bh2
Fujitsu Oasys
application/vnd.fujixerox.ddd
.ddd
Fujitsu — Xerox 2D CAD Data
application/vnd.fujixerox.docuworks
.xdw
Fujitsu — Xerox DocuWorks
application/vnd.fujixerox.docuworks.binder
.xbd
Fujitsu — Xerox DocuWorks Binder
application/vnd.fuzzysheet
.fzs
FuzzySheet
application/vnd.genomatix.tuxedo
.txd
Genomatix Tuxedo Framework
application/vnd.geogebra.file
.ggb
GeoGebra
application/vnd.geogebra.tool
.ggt
GeoGebra
application/vnd.geometry-explorer
.gex
GeoMetry Explorer
application/vnd.geonext
.gxt
GEONExT and JSXGraph
application/vnd.geoplan
.g2w
GeoplanW
application/vnd.geospace
.g3w
GeospacW
application/vnd.gmx
.gmx
GameMaker ActiveX
application/vnd.google-earth.kml+xml
.kml
Google Earth — KML
application/vnd.google-earth.kmz
.kmz
Google Earth — Zipped KML
application/vnd.grafeq
.gqf
GrafEq
application/vnd.groove-account
.gac
Groove — Account
application/vnd.groove-help
.ghf
Groove — Help
application/vnd.groove-identity-message
.gim
Groove — Identity Message
application/vnd.groove-injector
.grv
Groove — Injector
application/vnd.groove-tool-message
.gtm
Groove — Tool Message
application/vnd.groove-tool-template
.tpl
Groove — Tool Template
application/vnd.groove-vcard
.vcg
Groove — Vcard
application/vnd.hal+xml
.hal
Hypertext Application Language
application/vnd.handheld-entertainment+xml
.zmm
ZVUE Media Manager
application/vnd.hbci
.hbci
Homebanking Computer Interface (HBCI)
application/vnd.hhe.lesson-player
.les
Archipelago Lesson Player
application/vnd.hp-hpgl
.hpgl
HP-GL/2 and HP RTL
application/vnd.hp-hpid
.hpid
Hewlett Packard Instant Delivery
application/vnd.hp-hps
.hps
Hewlett-Packard’s WebPrintSmart
application/vnd.hp-jlyt
.jlt
HP Indigo Digital Press — Job Layout Languate
application/vnd.hp-pcl
.pcl
HP Printer Command Language
application/vnd.hp-pclxl
.pclxl
PCL 6 Enhanced (Formely PCL XL)
application/vnd.hydrostatix.sof-data
.sfd-hdstx
Hydrostatix Master Suite
application/vnd.hzn-3d-crossword
.x3d
3D Crossword Plugin
application/vnd.ibm.minipay
.mpy
MiniPay
application/vnd.ibm.modcap
.afp
MO:DCA-P
application/vnd.ibm.rights-management
.irm
IBM DB2 Rights Manager
application/vnd.ibm.secure-container
.sc
IBM Electronic Media Management System — Secure Container
application/vnd.iccprofile
.icc
ICC profile
application/vnd.igloader
.igl
igLoader
application/vnd.immervision-ivp
.ivp
ImmerVision PURE Players
application/vnd.immervision-ivu
.ivu
ImmerVision PURE Players
application/vnd.insors.igm
.igm
IOCOM Visimeet
application/vnd.intercon.formnet
.xpw
Intercon FormNet
application/vnd.intergeo
.i2g
Interactive Geometry Software
application/vnd.intu.qbo
.qbo
Open Financial Exchange
application/vnd.intu.qfx
.qfx
Quicken
application/vnd.ipunplugged.rcprofile
.rcprofile
IP Unplugged Roaming Client
application/vnd.irepository.package+xml
.irp
iRepository / Lucidoc Editor
application/vnd.is-xpr
.xpr
Express by Infoseek
application/vnd.isac.fcs
.fcs
International Society for Advancement of Cytometry
application/vnd.jam
.jam
Lightspeed Audio Lab
application/vnd.jcp.javame.midlet-rms
.rms
Mobile Information Device Profile
application/vnd.jisp
.jisp
RhymBox
application/vnd.joost.joda-archive
.joda
Joda Archive
application/vnd.kahootz
.ktz
Kahootz
application/vnd.kde.karbon
.karbon
KDE KOffice Office Suite — Karbon
application/vnd.kde.kchart
.chrt
KDE KOffice Office Suite — KChart
application/vnd.kde.kformula
.kfo
KDE KOffice Office Suite — Kformula
application/vnd.kde.kivio
.flw
KDE KOffice Office Suite — Kivio
application/vnd.kde.kontour
.kon
KDE KOffice Office Suite — Kontour
application/vnd.kde.kpresenter
.kpr
KDE KOffice Office Suite — Kpresenter
application/vnd.kde.kspread
.ksp
KDE KOffice Office Suite — Kspread
application/vnd.kde.kword
.kwd
KDE KOffice Office Suite — Kword
application/vnd.kenameaapp
.htke
Kenamea App
application/vnd.kidspiration
.kia
Kidspiration
application/vnd.kinar
.kne
Kinar Applications
application/vnd.koan
.skp
SSEYO Koan Play File
application/vnd.kodak-descriptor
.sse
Kodak Storyshare
application/vnd.las.las+xml
.lasxml
Laser App Enterprise
application/vnd.llamagraphics.life-balance.desktop
.lbd
Life Balance — Desktop Edition
application/vnd.llamagraphics.life-balance.exchange+xml
.lbe
Life Balance — Exchange Format
application/vnd.lotus-1-2-3
0,123
Lotus 1-2-3
application/vnd.lotus-approach
.apr
Lotus Approach
application/vnd.lotus-freelance
.pre
Lotus Freelance
application/vnd.lotus-notes
.nsf
Lotus Notes
application/vnd.lotus-organizer
.org
Lotus Organizer
application/vnd.lotus-screencam
.scm
Lotus Screencam
application/vnd.lotus-wordpro
.lwp
Lotus Wordpro
application/vnd.macports.portpkg
.portpkg
MacPorts Port System
application/vnd.mcd
.mcd
Micro CADAM Helix D&D
application/vnd.medcalcdata
.mc1
MedCalc
application/vnd.mediastation.cdkey
.cdkey
MediaRemote
application/vnd.mfer
.mwf
Medical Waveform Encoding Format
application/vnd.mfmp
.mfm
Melody Format for Mobile Platform
application/vnd.micrografx.flo
.flo
Micrografx
application/vnd.micrografx.igx
.igx
Micrografx iGrafx Professional
application/vnd.mif
.mif
FrameMaker Interchange Format
application/vnd.mobius.daf
.daf
Mobius Management Systems — UniversalArchive
application/vnd.mobius.dis
.dis
Mobius Management Systems — Distribution Database
application/vnd.mobius.mbk
.mbk
Mobius Management Systems — Basket file
application/vnd.mobius.mqy
.mqy
Mobius Management Systems — Query File
application/vnd.mobius.msl
.msl
Mobius Management Systems — Script Language
application/vnd.mobius.plc
.plc
Mobius Management Systems — Policy Definition Language File
application/vnd.mobius.txf
.txf
Mobius Management Systems — Topic Index File
application/vnd.mophun.application
.mpn
Mophun VM
application/vnd.mophun.certificate
.mpc
Mophun Certificate
application/vnd.mozilla.xul+xml
.xul
XUL — XML User Interface Language
application/vnd.ms-artgalry
.cil
Microsoft Artgalry
application/vnd.ms-cab-compressed
.cab
Microsoft Cabinet File
application/vnd.ms-excel
.xls
Microsoft Excel
application/vnd.ms-excel.addin.macroenabled.12
.xlam
Microsoft Excel — Add-In File
application/vnd.ms-excel.sheet.binary.macroenabled.12
.xlsb
Microsoft Excel — Binary Workbook
application/vnd.ms-excel.sheet.macroenabled.12
.xlsm
Microsoft Excel — Macro-Enabled Workbook
application/vnd.ms-excel.template.macroenabled.12
.xltm
Microsoft Excel — Macro-Enabled Template File
application/vnd.ms-fontobject
.eot
Microsoft Embedded OpenType
application/vnd.ms-htmlhelp
.chm
Microsoft Html Help File
application/vnd.ms-ims
.ims
Microsoft Class Server
application/vnd.ms-lrm
.lrm
Microsoft Learning Resource Module
application/vnd.ms-officetheme
.thmx
Microsoft Office System Release Theme
application/vnd.ms-pki.seccat
.cat
Microsoft Trust UI Provider — Security Catalog
application/vnd.ms-pki.stl
.stl
Microsoft Trust UI Provider — Certificate Trust Link
application/vnd.ms-powerpoint
.ppt
Microsoft PowerPoint
application/vnd.ms-powerpoint.addin.macroenabled.12
.ppam
Microsoft PowerPoint — Add-in file
application/vnd.ms-powerpoint.presentation.macroenabled.12
.pptm
Microsoft PowerPoint — Macro-Enabled Presentation File
application/vnd.ms-powerpoint.slide.macroenabled.12
.sldm
Microsoft PowerPoint — Macro-Enabled Open XML Slide
application/vnd.ms-powerpoint.slideshow.macroenabled.12
.ppsm
Microsoft PowerPoint — Macro-Enabled Slide Show File
application/vnd.ms-powerpoint.template.macroenabled.12
.potm
Microsoft PowerPoint — Macro-Enabled Template File
application/vnd.ms-project
.mpp
Microsoft Project
application/vnd.ms-word.document.macroenabled.12
.docm
Microsoft Word — Macro-Enabled Document
application/vnd.ms-word.template.macroenabled.12
.dotm
Microsoft Word — Macro-Enabled Template
application/vnd.ms-works
.wps
Microsoft Works
application/vnd.ms-wpl
.wpl
Microsoft Windows Media Player Playlist
application/vnd.ms-xpsdocument
.xps
Microsoft XML Paper Specification
application/vnd.mseq
.mseq
3GPP MSEQ File
application/vnd.musician
.mus
MUsical Score Interpreted Code Invented for the ASCII designation of Notation
application/vnd.muvee.style
.msty
Muvee Automatic Video Editing
application/vnd.neurolanguage.nlu
.nlu
neuroLanguage
application/vnd.noblenet-directory
.nnd
NobleNet Directory
application/vnd.noblenet-sealer
.nns
NobleNet Sealer
application/vnd.noblenet-web
.nnw
NobleNet Web
application/vnd.nokia.n-gage.data
.ngdat
N-Gage Game Data
application/vnd.nokia.n-gage.symbian.install
.n-gage
N-Gage Game Installer
application/vnd.nokia.radio-preset
.rpst
Nokia Radio Application — Preset
application/vnd.nokia.radio-presets
.rpss
Nokia Radio Application — Preset
application/vnd.novadigm.edm
.edm
Novadigm’s RADIA and EDM products
application/vnd.novadigm.edx
.edx
Novadigm’s RADIA and EDM products
application/vnd.novadigm.ext
.ext
Novadigm’s RADIA and EDM products
application/vnd.oasis.opendocument.chart
.odc
OpenDocument Chart
application/vnd.oasis.opendocument.chart-template
.otc
OpenDocument Chart Template
application/vnd.oasis.opendocument.database
.odb
OpenDocument Database
application/vnd.oasis.opendocument.formula
.odf
OpenDocument Formula
application/vnd.oasis.opendocument.formula-template
.odft
OpenDocument Formula Template
application/vnd.oasis.opendocument.graphics
.odg
OpenDocument Graphics
application/vnd.oasis.opendocument.graphics-template
.otg
OpenDocument Graphics Template
application/vnd.oasis.opendocument.image
.odi
OpenDocument Image
application/vnd.oasis.opendocument.image-template
.oti
OpenDocument Image Template
application/vnd.oasis.opendocument.presentation
.odp
OpenDocument Presentation
application/vnd.oasis.opendocument.presentation-template
.otp
OpenDocument Presentation Template
application/vnd.oasis.opendocument.spreadsheet
.ods
OpenDocument Spreadsheet
application/vnd.oasis.opendocument.spreadsheet-template
.ots
OpenDocument Spreadsheet Template
application/vnd.oasis.opendocument.text
.odt
OpenDocument Text
application/vnd.oasis.opendocument.text-master
.odm
OpenDocument Text Master
application/vnd.oasis.opendocument.text-template
.ott
OpenDocument Text Template
application/vnd.oasis.opendocument.text-web
.oth
Open Document Text Web
application/vnd.olpc-sugar
.xo
Sugar Linux Application Bundle
application/vnd.oma.dd2+xml
.dd2
OMA Download Agents
application/vnd.openofficeorg.extension
.oxt
Open Office Extension
application/vnd.openxmlformats-officedocument.presentationml.presentation
.pptx
Microsoft Office — OOXML — Presentation
application/vnd.openxmlformats-officedocument.presentationml.slide
.sldx
Microsoft Office — OOXML — Presentation (Slide)
application/vnd.openxmlformats-officedocument.presentationml.slideshow
.ppsx
Microsoft Office — OOXML — Presentation (Slideshow)
application/vnd.openxmlformats-officedocument.presentationml.template
.potx
Microsoft Office — OOXML — Presentation Template
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xlsx
Microsoft Office — OOXML — Spreadsheet
application/vnd.openxmlformats-officedocument.spreadsheetml.template
.xltx
Microsoft Office — OOXML — Spreadsheet Template
application/vnd.openxmlformats-officedocument.wordprocessingml.document
.docx
Microsoft Office — OOXML — Word Document
application/vnd.openxmlformats-officedocument.wordprocessingml.template
.dotx
Microsoft Office — OOXML — Word Document Template
application/vnd.osgeo.mapguide.package
.mgp
MapGuide DBXML
application/vnd.osgi.dp
.dp
OSGi Deployment Package
application/vnd.palm
.pdb
PalmOS Data
application/vnd.pawaafile
.paw
PawaaFILE
application/vnd.pg.format
.str
Proprietary P&G Standard Reporting System
application/vnd.pg.osasli
.ei6
Proprietary P&G Standard Reporting System
application/vnd.picsel
.efif
Pcsel eFIF File
application/vnd.pmi.widget
.wg
Qualcomm’s Plaza Mobile Internet
application/vnd.pocketlearn
.plf
PocketLearn Viewers
application/vnd.powerbuilder6
.pbd
PowerBuilder
application/vnd.previewsystems.box
.box
Preview Systems ZipLock/VBox
application/vnd.proteus.magazine
.mgz
EFI Proteus
application/vnd.publishare-delta-tree
.qps
PubliShare Objects
application/vnd.pvi.ptid1
.ptid
Princeton Video Image
application/vnd.quark.quarkxpress
.qxd
QuarkXpress
application/vnd.realvnc.bed
.bed
RealVNC
application/vnd.recordare.musicxml
.mxl
Recordare Applications
application/vnd.recordare.musicxml+xml
.musicxml
Recordare Applications
application/vnd.rig.cryptonote
.cryptonote
CryptoNote
application/vnd.rim.cod
.cod
Blackberry COD File
application/vnd.rn-realmedia
.rm
RealMedia
application/vnd.route66.link66+xml
.link66
ROUTE 66 Location Based Services
application/vnd.sailingtracker.track
.st
SailingTracker
application/vnd.seemail
.see
SeeMail
application/vnd.sema
.sema
Secured eMail
application/vnd.semd
.semd
Secured eMail
application/vnd.semf
.semf
Secured eMail
application/vnd.shana.informed.formdata
.ifm
Shana Informed Filler
application/vnd.shana.informed.formtemplate
.itp
Shana Informed Filler
application/vnd.shana.informed.interchange
.iif
Shana Informed Filler
application/vnd.shana.informed.package
.ipk
Shana Informed Filler
application/vnd.simtech-mindmapper
.twd
SimTech MindMapper
application/vnd.smaf
.mmf
SMAF File
application/vnd.smart.teacher
.teacher
SMART Technologies Apps
application/vnd.solent.sdkm+xml
.sdkm
SudokuMagic
application/vnd.spotfire.dxp
.dxp
TIBCO Spotfire
application/vnd.spotfire.sfs
.sfs
TIBCO Spotfire
application/vnd.stardivision.calc
.sdc
StarOffice — Calc
application/vnd.stardivision.draw
.sda
StarOffice — Draw
application/vnd.stardivision.impress
.sdd
StarOffice — Impress
application/vnd.stardivision.math
.smf
StarOffice — Math
application/vnd.stardivision.writer
.sdw
StarOffice — Writer
application/vnd.stardivision.writer-global
.sgl
StarOffice — Writer (Global)
application/vnd.stepmania.stepchart
.sm
StepMania
application/vnd.sun.xml.calc
.sxc
OpenOffice — Calc (Spreadsheet)
application/vnd.sun.xml.calc.template
.stc
OpenOffice — Calc Template (Spreadsheet)
application/vnd.sun.xml.draw
.sxd
OpenOffice — Draw (Graphics)
application/vnd.sun.xml.draw.template
.std
OpenOffice — Draw Template (Graphics)
application/vnd.sun.xml.impress
.sxi
OpenOffice — Impress (Presentation)
application/vnd.sun.xml.impress.template
.sti
OpenOffice — Impress Template (Presentation)
application/vnd.sun.xml.math
.sxm
OpenOffice — Math (Formula)
application/vnd.sun.xml.writer
.sxw
OpenOffice — Writer (Text — HTML)
application/vnd.sun.xml.writer.global
.sxg
OpenOffice — Writer (Text — HTML)
application/vnd.sun.xml.writer.template
.stw
OpenOffice — Writer Template (Text — HTML)
application/vnd.sus-calendar
.sus
ScheduleUs
application/vnd.svd
.svd
SourceView Document
application/vnd.symbian.install
.sis
Symbian Install Package
application/vnd.syncml.dm+wbxml
.bdm
SyncML — Device Management
application/vnd.syncml.dm+xml
.xdm
SyncML — Device Management
application/vnd.syncml+xml
.xsm
SyncML
application/vnd.tao.intent-module-archive
.tao
Tao Intent
application/vnd.tmobile-livetv
.tmo
MobileTV
application/vnd.trid.tpt
.tpt
TRI Systems Config
application/vnd.triscape.mxs
.mxs
Triscape Map Explorer
application/vnd.trueapp
.tra
True BASIC
application/vnd.ufdl
.ufd
Universal Forms Description Language
application/vnd.uiq.theme
.utz
User Interface Quartz — Theme (Symbian)
application/vnd.umajin
.umj
UMAJIN
application/vnd.unity
.unityweb
Unity 3d
application/vnd.uoml+xml
.uoml
Unique Object Markup Language
application/vnd.vcx
.vcx
VirtualCatalog
application/vnd.visio
.vsd
Microsoft Visio
application/vnd.visio2013
.vsdx
Microsoft Visio 2013
application/vnd.visionary
.vis
Visionary
application/vnd.vsf
.vsf
Viewport+
application/vnd.wap.wbxml
.wbxml
WAP Binary XML (WBXML)
application/vnd.wap.wmlc
.wmlc
Compiled Wireless Markup Language (WMLC)
application/vnd.wap.wmlscriptc
.wmlsc
WMLScript
application/vnd.webturbo
.wtb
WebTurbo
application/vnd.wolfram.player
.nbp
Mathematica Notebook Player
application/vnd.wordperfect
.wpd
Wordperfect
application/vnd.wqd
.wqd
SundaHus WQ
application/vnd.wt.stf
.stf
Worldtalk
application/vnd.xara
.xar
CorelXARA
application/vnd.xfdl
.xfdl
Extensible Forms Description Language
application/vnd.yamaha.hv-dic
.hvd
HV Voice Dictionary
application/vnd.yamaha.hv-script
.hvs
HV Script
application/vnd.yamaha.hv-voice
.hvp
HV Voice Parameter
application/vnd.yamaha.openscoreformat
.osf
Open Score Format
application/vnd.yamaha.openscoreformat.osfpvg+xml
.osfpvg
OSFPVG
application/vnd.yamaha.smaf-audio
.saf
SMAF Audio
application/vnd.yamaha.smaf-phrase
.spf
SMAF Phrase
application/vnd.yellowriver-custom-menu
.cmp
CustomMenu
application/vnd.zul
.zir
Z.U.L. Geometry
application/vnd.zzazz.deck+xml
.zaz
Zzazz Deck
application/voicexml+xml
.vxml
VoiceXML
application/widget
.wgt
Widget Packaging and XML Configuration
application/winhlp
.hlp
WinHelp
application/wsdl+xml
.wsdl
WSDL — Web Services Description Language
application/wspolicy+xml
.wspolicy
Web Services Policy
application/x-7z-compressed
.7z
7-Zip
application/x-abiword
.abw
AbiWord
application/x-ace-compressed
.ace
Ace Archive
application/x-apple-diskimage
.dmg
Apple Disk Image
application/x-authorware-bin
.aab
Adobe (Macropedia) Authorware — Binary File
application/x-authorware-map
.aam
Adobe (Macropedia) Authorware — Map
application/x-authorware-seg
.aas
Adobe (Macropedia) Authorware — Segment File
application/x-bcpio
.bcpio
Binary CPIO Archive
application/x-bittorrent
.torrent
BitTorrent
application/x-bzip
.bz
Bzip Archive
application/x-bzip2
.bz2
Bzip2 Archive
application/x-cdlink
.vcd
Video CD
application/x-chat
.chat
pIRCh
application/x-chess-pgn
.pgn
Portable Game Notation (Chess Games)
application/x-cpio
.cpio
CPIO Archive
application/x-csh
.csh
C Shell Script
application/x-debian-package
.deb
Debian Package
application/x-director
.dir
Adobe Shockwave Player
application/x-doom
.wad
Doom Video Game
application/x-dtbncx+xml
.ncx
Navigation Control file for XML (for ePub)
application/x-dtbook+xml
.dtb
Digital Talking Book
application/x-dtbresource+xml
.res
Digital Talking Book — Resource File
application/x-dvi
.dvi
Device Independent File Format (DVI)
application/x-font-bdf
.bdf
Glyph Bitmap Distribution Format
application/x-font-ghostscript
.gsf
Ghostscript Font
application/x-font-linux-psf
.psf
PSF Fonts
application/x-font-otf
.otf
OpenType Font File
application/x-font-pcf
.pcf
Portable Compiled Format
application/x-font-snf
.snf
Server Normal Format
application/x-font-ttf
.ttf
TrueType Font
application/x-font-type1
.pfa
PostScript Fonts
application/x-font-woff
.woff
Web Open Font Format
application/x-futuresplash
.spl
FutureSplash Animator
application/x-gnumeric
.gnumeric
Gnumeric
application/x-gtar
.gtar
GNU Tar Files
application/x-hdf
.hdf
Hierarchical Data Format
application/x-java-jnlp-file
.jnlp
Java Network Launching Protocol
application/x-latex
.latex
LaTeX
application/x-mobipocket-ebook
.prc
Mobipocket
application/x-ms-application
.application
Microsoft ClickOnce
application/x-ms-wmd
.wmd
Microsoft Windows Media Player Download Package
application/x-ms-wmz
.wmz
Microsoft Windows Media Player Skin Package
application/x-ms-xbap
.xbap
Microsoft XAML Browser Application
application/x-msaccess
.mdb
Microsoft Access
application/x-msbinder
.obd
Microsoft Office Binder
application/x-mscardfile
.crd
Microsoft Information Card
application/x-msclip
.clp
Microsoft Clipboard Clip
application/x-msdownload
.exe
Microsoft Application
application/x-msmediaview
.mvb
Microsoft MediaView
application/x-msmetafile
.wmf
Microsoft Windows Metafile
application/x-msmoney
.mny
Microsoft Money
application/x-mspublisher
.pub
Microsoft Publisher
application/x-msschedule
.scd
Microsoft Schedule+
application/x-msterminal
.trm
Microsoft Windows Terminal Services
application/x-mswrite
.wri
Microsoft Wordpad
application/x-netcdf
.nc
Network Common Data Form (NetCDF)
application/x-pkcs12
.p12
PKCS #12 — Personal Information Exchange Syntax Standard
application/x-pkcs7-certificates
.p7b
PKCS #7 — Cryptographic Message Syntax Standard (Certificates)
application/x-pkcs7-certreqresp
.p7r
PKCS #7 — Cryptographic Message Syntax Standard (Certificate Request Response)
application/x-rar-compressed
.rar
RAR Archive
application/x-sh
.sh
Bourne Shell Script
application/x-shar
.shar
Shell Archive
application/x-shockwave-flash
.swf
Adobe Flash
application/x-silverlight-app
.xap
Microsoft Silverlight
application/x-stuffit
.sit
Stuffit Archive
application/x-stuffitx
.sitx
Stuffit Archive
application/x-sv4cpio
.sv4cpio
System V Release 4 CPIO Archive
application/x-sv4crc
.sv4crc
System V Release 4 CPIO Checksum Data
application/x-tar
.tar
Tar File (Tape Archive)
application/x-tcl
.tcl
Tcl Script
application/x-tex
.tex
TeX
application/x-tex-tfm
.tfm
TeX Font Metric
application/x-texinfo
.texinfo
GNU Texinfo Document
application/x-ustar
.ustar
Ustar (Uniform Standard Tape Archive)
application/x-wais-source
.src
WAIS Source
application/x-x509-ca-cert
.der
X.509 Certificate
application/x-xfig
.fig
Xfig
application/x-xpinstall
.xpi
XPInstall — Mozilla
application/xcap-diff+xml
.xdf
XML Configuration Access Protocol — XCAP Diff
application/xenc+xml
.xenc
XML Encryption Syntax and Processing
application/xhtml+xml
.xhtml
XHTML — The Extensible HyperText Markup Language
application/xml
.xml
XML — Extensible Markup Language
application/xml-dtd
.dtd
Document Type Definition
application/xop+xml
.xop
XML-Binary Optimized Packaging
application/xslt+xml
.xslt
XML Transformations
application/xspf+xml
.xspf
XSPF — XML Shareable Playlist Format
application/xv+xml
.mxml
MXML
application/yang
.yang
YANG Data Modeling Language
application/yin+xml
.yin
YIN (YANG — XML)
application/zip
.zip
Zip Archive
From Wikipedia Media type,
A media type is composed of a type, a subtype, and optional
parameters. As an example, an HTML file might be designated text/html; charset=UTF-8.Media type consists of top-level type name and sub-type name, which is
further structured into so-called «trees».
top-level type name / subtype name [ ; parameters ]
top-level type name / [ tree. ] subtype name [ +suffix ] [ ; parameters ]
All media types should be registered using the IANA registration procedures. Currently the following trees are created: standard
, vendor
, personal
or vanity
, unregistered x.
Standard:
Media types in the standards tree do not use any tree facet (prefix).
type / media type name [+suffix]
Examples: «application/xhtml+xml», «image/png»
Vendor:
Vendor tree is used for media types associated with publicly available
products. It usesvnd.
facet.
type / vnd. media type name [+suffix] - used in the case of well-known producer
type / vnd. producer's name followed by media type name [+suffix] - producer's name must be approved by IANA
type / vnd. producer's name followed by product's name [+suffix] - producer's name must be approved by IANA
Personal or Vanity tree:
Personal or Vanity tree includes media types created experimentally or
as part of products that are not distributed commercially. It uses
prs.
facet.
type / prs. media type name [+suffix]
Unregistered x. tree:
The «x.» tree may be used for media types intended exclusively for use
in private, local environments and only with the active agreement of
the parties exchanging them. Types in this tree cannot be registered.According to the previous version of RFC 6838 — obsoleted RFC 2048
(published in November 1996) it should rarely, if ever, be necessary
to use unregistered experimental types, and as such use of both «x-»
and «x.» forms is discouraged. Previous versions of that RFC — RFC
1590 and RFC 1521 stated that the use of «x-» notation for the
sub-type name may be used for unregistered and private sub-types, but
this recommendation was obsoleted in November 1996.
type / x. media type name [+suffix]
So its clear that the standard type MIME type application/pdf
is the appropriate one to use while you should avoid using the obsolete and unregistered x-
media type as stated in RFC 2048 and RFC 6838.
From Wikipedia Media type,
A media type is composed of a type, a subtype, and optional
parameters. As an example, an HTML file might be designated text/html; charset=UTF-8.Media type consists of top-level type name and sub-type name, which is
further structured into so-called «trees».
top-level type name / subtype name [ ; parameters ]
top-level type name / [ tree. ] subtype name [ +suffix ] [ ; parameters ]
All media types should be registered using the IANA registration procedures. Currently the following trees are created: standard
, vendor
, personal
or vanity
, unregistered x.
Standard:
Media types in the standards tree do not use any tree facet (prefix).
type / media type name [+suffix]
Examples: «application/xhtml+xml», «image/png»
Vendor:
Vendor tree is used for media types associated with publicly available
products. It usesvnd.
facet.
type / vnd. media type name [+suffix] - used in the case of well-known producer
type / vnd. producer's name followed by media type name [+suffix] - producer's name must be approved by IANA
type / vnd. producer's name followed by product's name [+suffix] - producer's name must be approved by IANA
Personal or Vanity tree:
Personal or Vanity tree includes media types created experimentally or
as part of products that are not distributed commercially. It uses
prs.
facet.
type / prs. media type name [+suffix]
Unregistered x. tree:
The «x.» tree may be used for media types intended exclusively for use
in private, local environments and only with the active agreement of
the parties exchanging them. Types in this tree cannot be registered.According to the previous version of RFC 6838 — obsoleted RFC 2048
(published in November 1996) it should rarely, if ever, be necessary
to use unregistered experimental types, and as such use of both «x-»
and «x.» forms is discouraged. Previous versions of that RFC — RFC
1590 and RFC 1521 stated that the use of «x-» notation for the
sub-type name may be used for unregistered and private sub-types, but
this recommendation was obsoleted in November 1996.
type / x. media type name [+suffix]
So its clear that the standard type MIME type application/pdf
is the appropriate one to use while you should avoid using the obsolete and unregistered x-
media type as stated in RFC 2048 and RFC 6838.