Fort de l'Aber

From Warlike



Error: Invalid JSON (<!DOCTYPE html> <html lang="en"> <head>

   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>Wikimedia Commons SPARQL Query Error</title>
   <script src="https://cdn.tailwindcss.com"></script>
   <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&display=swap" rel="stylesheet">
   <style>
       body {
           font-family: 'Inter', sans-serif;
           background-color: #f3f4f6;
       }
       .container {
           max-width: 900px;
       }
       .error-box {
           background-color: #fee2e2;
           color: #ef4444;
           padding: 1.5rem;
           border-radius: 0.5rem;
           border: 1px solid #ef4444;
           word-wrap: break-word; /* Ensure long URLs/messages wrap */
       }
       code {
           background-color: #e2e8f0;
           padding: 0.2rem 0.4rem;
           border-radius: 0.25rem;
           font-family: monospace;
       }
   </style>

</head> <body class="p-4 flex items-center justify-center min-h-screen">

SPARQL Query Service

Operation Failed:

An error occurred during query execution: HTTP Error: 400 Response: SPARQL-QUERY: queryStr= SELECT DISTINCT ?item ?file ?date ?label ?qualityLabel ?latitude ?longitude ?type ?subtype ?source WHERE { SERVICE wikibase:label {bd:serviceParam wikibase:language 'en'} { SELECT DISTINCT ?item ?file ?date ?label ?quality ?latitude ?longitude ?type ?subtype ?source WHERE { { SELECT DISTINCT ?item ?date ?file ?type ?subtype ?source (COALESCE(?label1,?label2) AS ?label) (SAMPLE (COALESCE(?latitude1,?latitude2)) AS ?latitude) (SAMPLE (COALESCE(?longitude1,?longitude2)) AS ?longitude) (SAMPLE(?qualitylist) AS ?quality) WHERE { {?item wdt:P180 wd:Q106868022} UNION {SERVICE wikibase:mwapi{ bd:serviceParam wikibase:api 'Generator' . bd:serviceParam wikibase:endpoint 'commons.wikimedia.org' . bd:serviceParam mwapi:gcmtitle 'Category:Fort de l'Aber (Crozon)' . bd:serviceParam mwapi:generator 'categorymembers' . bd:serviceParam mwapi:gcmtype 'file' . bd:serviceParam mwapi:gcmlimit 'max' . ?title wikibase:apiOutput mwapi:title . ?pageid wikibase:apiOutput '@pageid' . } BIND (URI(CONCAT('https://commons.wikimedia.org/entity/M', ?pageid)) AS ?item) } OPTIONAL {?item rdfs:label ?label1 FILTER(LANG(?label1) = 'en')} ?item schema:url ?url. BIND (CONCAT('File:',wikibase:decodeUri(substr(str(?url),52))) AS ?file) BIND(REPLACE(REPLACE(?file, '^File:', ), '.[^.]*$', ) AS ?label2) OPTIONAL {?item wdt:P571 ?date} OPTIONAL {?item wdt:P6731 ?qualitylist} OPTIONAL { ?item p:P1259 ?position1. ?position1 psv:P1259/wikibase:geoLatitude ?latitude1a. ?position1 psv:P1259/wikibase:geoLongitude ?longitude1a. BIND(STR(?latitude1a) AS ?latitude1) BIND(STR(?longitude1a) AS ?longitude1) } OPTIONAL { ?item p:P9149 ?position2. ?position2 psv:P9149/wikibase:geoLatitude ?latitude2a. ?position2 psv:P9149/wikibase:geoLongitude ?longitude2a. BIND(STR(?latitude2a) AS ?latitude2) BIND(STR(?longitude2a) AS ?longitude2) } BIND(CONCAT('commons') AS ?type) BIND(CONCAT('image') AS ?subtype) BIND(CONCAT('Commons') AS ?source) FILTER ( STRENDS(LCASE(STR(?file)), '.jpg') || STRENDS(LCASE(STR(?file)), '.jpeg') ) } GROUP BY ?item ?date ?file ?label1 ?label2 ?latitude1 ?latitude2 ?longitude1 ?longitude2 ?type ?subtype ?source } } ORDER BY DESC(?quality) ASC(?date) LIMIT 10 } } GROUP BY ?item ?file ?date ?label ?qualityLabel ?latitude ?longitude ?type ?subtype ?source ORDER BY ASC(?date) java.util.concurrent.ExecutionException: org.openrdf.query.MalformedQueryException: Lexical error at line 16, column 70. Encountered: " " (32), after : "Aber" at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:206) at com.bigdata.rdf.sail.webapp.BigdataServlet.submitApiTask(BigdataServlet.java:292) at com.bigdata.rdf.sail.webapp.QueryServlet.doSparqlQuery(QueryServlet.java:678) at com.bigdata.rdf.sail.webapp.QueryServlet.doPost(QueryServlet.java:275) at com.bigdata.rdf.sail.webapp.RESTServlet.doPost(RESTServlet.java:269) at com.bigdata.rdf.sail.webapp.MultiTenancyServlet.doPost(MultiTenancyServlet.java:195) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655) at org.wikidata.query.rdf.blazegraph.throttling.ThrottlingFilter.doFilter(ThrottlingFilter.java:322) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642) at org.wikidata.query.rdf.blazegraph.throttling.SystemOverloadFilter.doFilter(SystemOverloadFilter.java:84) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642) at ch.qos.logback.classic.helpers.MDCInsertingServletFilter.doFilter(MDCInsertingServletFilter.java:50) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642) at org.wikidata.query.rdf.blazegraph.filters.QueryEventSenderFilter.doFilter(QueryEventSenderFilter.java:125) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642) at org.wikidata.query.rdf.blazegraph.filters.ClientIPFilter.doFilter(ClientIPFilter.java:43) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642) at org.wikidata.query.rdf.blazegraph.filters.JWTIdentityFilter.doFilter(JWTIdentityFilter.java:66) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642) at org.wikidata.query.rdf.blazegraph.filters.RealAgentFilter.doFilter(RealAgentFilter.java:33) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642) at org.wikidata.query.rdf.blazegraph.filters.RequestConcurrencyFilter.doFilter(RequestConcurrencyFilter.java:50) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1634) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) at org.eclipse.jetty.server.Server.handle(Server.java:503) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683) at java.lang.Thread.run(Thread.java:750) Caused by: org.openrdf.query.MalformedQueryException: Lexical error at line 16, column 70. Encountered: " " (32), after : "Aber" at com.bigdata.rdf.sail.sparql.Bigdata2ASTSPARQLParser.parseQuery2(Bigdata2ASTSPARQLParser.java:404) at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:741) at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:695) at com.bigdata.rdf.task.ApiTaskForIndexManager.call(ApiTaskForIndexManager.java:68) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ... 1 more Caused by: com.bigdata.rdf.sail.sparql.ast.TokenMgrError: Lexical error at line 16, column 70. Encountered: " " (32), after : "Aber" at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilderTokenManager.getNextToken(SyntaxTreeBuilderTokenManager.java:3994) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.jj_ntk(SyntaxTreeBuilder.java:9637) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.RDFLiteral(SyntaxTreeBuilder.java:7189) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphTerm(SyntaxTreeBuilder.java:3893) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.VarOrTermOrTRefP(SyntaxTreeBuilder.java:8714) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphNodePath(SyntaxTreeBuilder.java:3786) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.ObjectPath(SyntaxTreeBuilder.java:3467) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.ObjectListPath(SyntaxTreeBuilder.java:3044) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.PropertyListPath(SyntaxTreeBuilder.java:2992) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.TriplesSameSubjectPath(SyntaxTreeBuilder.java:2919) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.TriplesBlock(SyntaxTreeBuilder.java:2321) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.BasicGraphPattern(SyntaxTreeBuilder.java:2097) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPattern(SyntaxTreeBuilder.java:2034) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupGraphPattern(SyntaxTreeBuilder.java:1969) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.ServiceGraphPattern(SyntaxTreeBuilder.java:2534) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPatternNotTriples(SyntaxTreeBuilder.java:2370) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPattern(SyntaxTreeBuilder.java:2047) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupGraphPattern(SyntaxTreeBuilder.java:1969) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupOrUnionGraphPattern(SyntaxTreeBuilder.java:2451) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupOrUnionGraphPattern(SyntaxTreeBuilder.java:2459) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPatternNotTriples(SyntaxTreeBuilder.java:2361) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPattern(SyntaxTreeBuilder.java:2047) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupGraphPattern(SyntaxTreeBuilder.java:1969) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.WhereClause(SyntaxTreeBuilder.java:1013) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.SubSelect(SyntaxTreeBuilder.java:416) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupGraphPattern(SyntaxTreeBuilder.java:1965) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupOrUnionGraphPattern(SyntaxTreeBuilder.java:2451) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPatternNotTriples(SyntaxTreeBuilder.java:2361) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPattern(SyntaxTreeBuilder.java:2047) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupGraphPattern(SyntaxTreeBuilder.java:1969) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.WhereClause(SyntaxTreeBuilder.java:1013) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.SubSelect(SyntaxTreeBuilder.java:416) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupGraphPattern(SyntaxTreeBuilder.java:1965) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupOrUnionGraphPattern(SyntaxTreeBuilder.java:2451) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPatternNotTriples(SyntaxTreeBuilder.java:2361) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPattern(SyntaxTreeBuilder.java:2047) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GraphPattern(SyntaxTreeBuilder.java:2056) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.GroupGraphPattern(SyntaxTreeBuilder.java:1969) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.WhereClause(SyntaxTreeBuilder.java:1013) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.SelectQuery(SyntaxTreeBuilder.java:377) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.Query(SyntaxTreeBuilder.java:328) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.QueryContainer(SyntaxTreeBuilder.java:216) at com.bigdata.rdf.sail.sparql.ast.SyntaxTreeBuilder.parseQuery(SyntaxTreeBuilder.java:32) at com.bigdata.rdf.sail.sparql.Bigdata2ASTSPARQLParser.parseQuery2(Bigdata2ASTSPARQLParser.java:336) ... 7 more

</body> </html>).


'

WikimediaWikidata
fort

    ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​


Location: 48.2251, -4.4371, KML, Cluster Map, Maps,
44 places

Loading map...
  • Battle of Brest
    1342 naval battle in Europe
  • Siege of Brest
    1386 siege
  • Battle of Saint-Mathieu
    1512 battle
  • Battle of Brest
    1513 naval battle
  • Battle of Le Conquet
    1559 battle
  • Siege of Fort Crozon
    1594 siege
  • Battle of Camaret
    1694 battle of the Nine Years' War
  • Action of 11 September 1778
  • Childers Incident
    opening shots between British and French forces during the French Revolutionary Wars
  • Battle for Brest
    1944 battle fought on the Western Front during World War II
  • Qu 12
  • Fort de Bertheaume
    fort in Plougonvelin, in the Department of Finistère, France. It is located on a tidal island
  • Blancs-Sablons Redoubt
  • Fort de l'Aber
  • Fort de la Fraternité
    fort in Roscanvel, France
  • Fort de Toulbroc'h
  • Fort des Capucins
  • Fort du Dellec
  • Fort du Guelmeur
  • Fort du Mengant
  • Fort Quélern
  • Fort Robert
  • Keroriou Fort
  • Fort de Portzic
  • Fort du Petit Minou
  • Fort de Penfeld
  • Questel Fort
    fort
  • Fort de Keranroux
  • Fort Montbarey
    fort in France
  • Fort Fédérés
  • Fort Saint-Louis
  • Fort de Landaoudec
  • Brest Arsenal
    naval base on the banks of the river Penfeld, in Brest, France
  • Brest national naval museum
    Brest branch of the French National Naval Museum
  • Furieux
    ironclad warship of the French Navy
  • U-415
    1942 Type VIIC submarine
  • Donjon du château de Brest
  • Tour Azénor
  • Tour César
    Tour du château de Brest
  • Tour de Brest du château de Brest
  • Tour Française du château de Brest
  • Tour Madeleine
  • Tours Paradis du château de Brest
  • Tour Vauban
    fortified tower
1342-08-26T00:00:00Z
1342-08-26T00:00:00Z
1386-01-01T00:00:00Z
1386-01-01T00:00:00Z
1512-08-20T00:00:00Z
1512-08-20T00:00:00Z
1513-05-04T00:00:00Z
1513-05-04T00:00:00Z
1559-02-08T00:00:00Z
1559-02-08T00:00:00Z
1594-10-01T00:00:00Z
1594-11-19T00:00:00Z
1694-06-18T00:00:00Z
1694-06-18T00:00:00Z
1778-09-11T00:00:00Z
1778-09-11T00:00:00Z
1793-01-02T00:00:00Z
1793-01-02T00:00:00Z
1944-08-07T00:00:00Z
1944-09-19T00:00:00Z
1693-01-01T00:00:00Z
1693-01-01T00:00:00Z
1694-01-01T00:00:00Z
1694-01-01T00:00:00Z
1776-01-01T00:00:00Z
1776-01-01T00:00:00Z
1776-01-01T00:00:00Z
1776-01-01T00:00:00Z
1777-01-01T00:00:00Z
1777-01-01T00:00:00Z
1777-01-01T00:00:00Z
1777-01-01T00:00:00Z
1793-01-01T00:00:00Z
1793-01-01T00:00:00Z
1850-01-01T00:00:00Z
1850-01-01T00:00:00Z
1885-01-01T00:00:00Z
1885-01-01T00:00:00Z
1826-01-01T00:00:00Z
1826-01-01T00:00:00Z
1693-01-01T00:00:00Z
1693-01-01T00:00:00Z
{"selectable":false,"showCurrentTime":false,"width":"100%","zoomMin":100000000000}
    TypeSubtypeDateDescriptionNotesSource
    eventarmed conflict1342Battle of Brestnaval battleWikidata
    eventarmed conflict1386Siege of BrestsiegeWikidata
    eventarmed conflict1512Battle of Saint-Mathieunaval battle, Kingdom of France, Duchy of Brittany, Kingdom of EnglandWikidata
    eventarmed conflict1513Battle of BrestKingdom of France, Kingdom of England, naval battleWikidata
    eventarmed conflict1559Battle of Le ConquetKingdom of France, Kingdom of England, battleWikidata
    eventarmed conflict1594Siege of Fort CrozonsiegeWikidata
    eventarmed conflict1694Battle of CamaretFrance, Dutch Republic, Kingdom of England, naval battleWikidata
    eventarmed conflict1778Action of 11 September 1778Kingdom of France, Kingdom of Great Britain, naval battleWikidata
    eventarmed conflict1793Childers IncidentskirmishWikidata
    eventarmed conflict1944Battle for BrestUnited States, United Kingdom, Nazi Germany, battle, Hermann-Bernhard Ramcke, Troy H. MiddletonWikidata
    objectwatercraft1794Droits de l'Hommethird-rate, Téméraire-class third-rate ship of the lineWikidata
    organisationmilitary unit2011flotte océanographique françaisenaval fleet, laboratoryWikidata
    sitebunkerQu 12architectural structure, tobruk, ruinsWikidata
    sitecastleFort de Bertheaumefort, tidal island, fortress, castleWikidata
    sitefortBlancs-Sablons RedoubtredoubtWikidata
    sitefortFort de l'AberfortWikidata
    sitefortFort de la FraternitéfortWikidata
    sitefortFort de Toulbroc'hfortWikidata
    sitefortFort des CapucinsfortWikidata
    sitefortFort du Dellecvenue, fortWikidata
    sitefortFort du GuelmeurfortWikidata
    sitefortFort du MengantfortWikidata
    sitefortFort QuélernfortWikidata
    sitefortFort RobertfortWikidata
    sitefortKeroriou FortfortWikidata
    sitefort1693Fort de PortzicfortWikidata
    sitefort1694Fort du Petit MinoufortWikidata
    sitefort1776Fort de PenfeldfortWikidata
    sitefort1776Questel Fortfort, urban parkWikidata
    sitefort1777Fort de KeranrouxfortWikidata
    sitefort1777Fort Montbareyfort, museumWikidata
    sitefort1793Fort FédérésfortWikidata
    sitefort1850Fort Saint-LouisredoubtWikidata
    sitefort1885Fort de LandaoudecfortWikidata
    sitemilitary baseBrest Arsenalshipyard, shipbuilding, naval arsenalWikidata
    sitemuseum1826Brest national naval museumnaval museum, national museum, Service of the Museums of France, military museumWikidata
    siteshipwreckFurieuxironclad warship, shipwreckWikidata
    siteshipwreckU-415Type VIIC submarine, shipwreck, U-boatWikidata
    sitetowerDonjon du château de BrestkeepWikidata
    sitetowerTour Azénorfortified towerWikidata
    sitetowerTour Césarfortified towerWikidata
    sitetowerTour de Brest du château de Brestfortified towerWikidata
    sitetowerTour Française du château de Brestfortified towerWikidata
    sitetowerTour Madeleinefortified towerWikidata
    sitetowerTours Paradis du château de Brestcity gate, fortified towerWikidata
    sitetower1693Tour Vaubanfortified towerWikidata